首页 > TAG信息列表 > cnt0
Educational Codeforces Round 132 (Rated for Div. 2) A-C
Educational Codeforces Round 132 (Rated for Div. 2) https://codeforces.com/contest/1709 这场ab很模拟(但我写的很慢),c居然比d难(策略性失误,悲) A. Three Doors 读题读了半天 题意 有三扇门,编号1-3,只有对应的钥匙才能开这扇门。 初始的时候手里有一把钥匙 现在有两扇门后面各藏2022年中国高校计算机大赛-团队程序设计天梯赛(GPLT)上海理工大学校内选拔赛
比赛链接 2022年中国高校计算机大赛-团队程序设计天梯赛(GPLT)上海理工大学校内选拔赛 G.天气预报 给定一个01串,找到有多少个至少包含a个0,b个1的子串 解题思路 双指针 可以发现,对于一个位置来说,其往左满足至少有 \(a\) 个 \(0\) 且至少有 \(b\) 个 \(1\) 的位置 \(p\) 是确定的,且力扣782——变为棋盘(数学模拟)
解题思路 行与行之间的交换,不会改变列内关系,同样列列交换不会改变行; 因此,只会有两种行,两种列,并且每行每列1,0的个数相等(n为奇数时相差1); 并且这两行是相反的关系,只有这样交换完成后才会是两种相反的关系; 按此规则对矩阵进行合法判定; 交换次数即是与对应位置不等的个数/2; 之牛客寒假算法基础集训营
第一场 F 中位数切分 题目 样例 思路以及证明 因为整个数列中的数只有两种情况,即大于等于m和小于m两种情况,所以可以直接将原来的数列抽象成01串的形式,我们大于等于m的数为1,小于m的数为0。 又因为我们现在要让1处于中间位置,那么我们很容易得出:假设存在某个区间满足题设,若想要这个基于FIFO实验仿真测试 输入数据是8位宽,FIFO位宽是16位,练习思路
设计要求:上游模块产生的数据是8位宽, FIFO输入输出而是16位宽的,那么就需要将上游产生的两个8bit数据进行拼接,凑成一个完整的16bit数据,然后再一次写入fifo 上游模块产生两个信号 datat_in[7:0] 和 data_in_vld 给FIFO,在控制FIFO模块中,将利用这两个信号通过一定方式转换成写入FCF1546D.AquaMoon and Chess(组合数学)
传送门 思路: 考虑简单的情况\(0001100\) 这样移动后有\(0011000\)和\(0000110\)情况,可以发现\(11\)始终是在一起的,也就是说他们的移动位置可以看成是把\(1\)放到\(0\)上。 对于连续的多个\(1\)来说,有效的移动是成对的\(11\),单独多出来的那个是无法移动的。 问题就传化成了有\(cnt0b_lc_构成交替字符串需要的最小交换次数(思维+分类讨论两种方案)
将s转化为一个 交替字符串 。请你计算并返回转化所需的 最小 字符交换次数,如果无法完成转化,返回 -1 。 class Solution: def minSwaps(self, s: str) -> int: cnt1 = 0 odd1 = 0 cnt0 = 0 n = len(s) for i in range(n):【LeetCode-494】一和零
问题 给你一个二进制字符串数组 strs 和两个整数 m 和 n 。 请你找出并返回 strs 的最大子集的大小,该子集中 最多 有 m 个 0 和 n 个 1 。 如果 x 的所有元素也是 y 的元素,集合 x 是集合 y 的 子集 。 示例 输入: strs = ["10", "0001", "111001", "1", "0"], m = 5, n = 3 输出: 4[刷题之旅no19]P1087 [NOIP2004 普及组] FBI 树
思路,递归分治 函数: 参数就是结点在字符串上面的区间,L,R 首先设置cnt0和cnt1=0; 递归终止条件就是L==R 此时判断是0还是1,打印B或者I //出错 然后递归左子树,区间就是[L,R/2]; 递归右子树,区间就是[R/2+1,R]; //出错 然后看当前是F还是I, 直接遍历即可 for(int i=L;i<=R;i++) { if([leetcode/lintcode 题解] 腾讯面试题:一和零
描述 在计算机世界中, 由于资源限制, 我们一直想要追求的是产生最大的利益. 现在,假设你分别是 m个 0s 和 n个 1s 的统治者. 另一方面, 有一个只包含 0s 和 1s 的字符串构成的数组. 现在你的任务是找到可以由 m个 0s 和 n个 1s 构成的字符串的最大个数. 每一个 0 和 1 均只能使用一V - Infinite Prefixes CodeForces - 1295B
天哪!!菜到家啦。 数学+思维。 首先求出一个周期内cnt0-cnt1=c的个数,如果C=0,那么只要在一个周期内有前缀等于x,那么答案就是-1,否则答案就是0 如果C!=0,列一下方程x=t*c+a.即x-a=t*c。,要求t为大于等于0的整数,也就是我们的判断条件。。。。唉。 #include<bits/stdc++.h> using namespac474. 一和零
class Solution { public: int findMaxForm(vector<string>& strs, int m, int n) { int cnt0, cnt1; vector<vector<int> >dp(m+1,vector<int>(n+1,0)); for(string s: strs) { cnt0=0,cnt1=0;面试题61:扑克牌中的顺子
题目:LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张^_^)...他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子.....LL不高字符串哈希——1056E
典型的字符串哈希题 字符串hash[i]:子串s[1-i]代表的值 要截取串s[l-r] 求hash[r]-hash[l-1]*F[len]即可 #include<bits/stdc++.h>using namespace std;#define ll long long #define P 131#define mod 1000000007#define maxn 3000005char s[maxn],t[maxn];ll cnt0,cnt1,len1,leBZOJ5294 BJOI2018 二进制 线段树
传送门 因为每一位\(\mod 3\)的值为\(1,2,1,2,...\),也就相当于\(1,-1,1,-1,...\) 所以当某个区间的\(1\)的个数为偶数的时候,一定是可行的,只要把这若干个\(1\)放在一起就可以了。 而当某个区间的\(1\)的个数为奇数的时候,那么最优的方式显然是\(1\)和\(-1\)两两配对,剩下\(3\)个\(1\)BZOJ1053 [HAOI2007]反素数ant
题意 Description 对于任何正整数x,其约数的个数记作g(x)。例如g(1)=1、g(6)=4。如果某个正整数x满足:g(x)>g(i) 0<i<x,则称x为反质数。例如,整数1,2,4,6等都是反质数。现在给定一个数N,你能求出不超过N的最大的反质数么? Input 一个数N(1<=N<=2,000,000,000)。 Output 不超过N的最大的反质数