Codeforces1301B. Motarack's Birthday】的更多相关文章

题意是说给你一串数组,其中-1代表未知,求相邻两个数之差的绝对值最小,-1可以由k赋值,先考虑-1的情况,把k解出来,转换一下,就是绝对值之差最小情况,|k-a|,|k-b|,|k-c|,要使最大的最小,也就是在两个端点找,|k-min|,|k-max|,由数形结合可知,当k为min与max的中点时最小,由此算出k再扫一遍数组即可 #include<bits/stdc++.h> using namespace std; #define lowbit(x) ((x)&(-x)) type…
Dark is going to attend Motarack's birthday. Dark decided that the gift he is going to give to Motarack is an array aa of nn non-negative integers. Dark created that array 10001000 years ago, so some elements in that array disappeared. Dark knows tha…
题目链接:http://codeforces.com/problemset/problem/1301/B 思路: (1)都是-1的情况 (2)只有一个除-1之外的数 (3)至少有两个除-1之外的不同的数字 对于(3),我们可以得出最大数字和最小数字_max,_min,而我们的答案m和k易得一定是在[_max,_min]中得出, 那么我们当然可以初始化m = (_max-_min).因为数据范围大,我们可以通过二分来处理这个答案. 我们可以二分mid ∈[L=_min,R=_max],枚举k,然后…
知识点 最大独立集(set) = 补图的最大团(clique ) 最小顶点覆盖 + 最大独立集 = V E. Helping Hiasat time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Hiasat registered a new account in NeckoForces and when his friends fo…
问题描述 你在某社交网站上面注册了一个新账号,这个账号有\(n(n\leq 10^5)\)次记录.要么就是你更改过一次ID,要么就是一个ID为\(s(|s|\leq 40)\)的朋友访问过你的空间. 你有\(m(m\leq 40)\)个朋友.每一个朋友都会访问你的空间至少一次.如果这一个朋友每一次访问你的空间的时候,你的ID和它的ID一样,那么他就会高兴. 求你最多能让多少人高兴. 输入格式 第一行一个两个正整数n,m. 接下来n行每行表示一次记录,有如下两种格式: 1 2 s 其中1表示你更改…
序 希望,不要还有一天像今天一样糟糕. T1 three strings 笔记本的google 炸了,读题可难受了 多组测试数据 我们的想法是,用string存字符串,若 对于任意的i,a[i],b[i],c[i]里没有至少两个相同,那么就不是,反之是对 #include <bits/stdc++.h> typedef long long ll; typedef unsigned long long ull; typedef double db; #define fake int using…
最近网课也开始了,牛客上一堆比赛题目也没补,所以就D题后面的也懒得补了 A.Three String 水题 #include <cstdio> #include <cstring> using namespace std; ], b[], c[]; int main() { int t; scanf("%d", &t); while (t--) { memset(a, , sizeof(a)); memset(b, , sizeof(b)); memse…
A. Three Strings 题意:给三个长度相同的非空字符串abc,依次将c中的每个字符和a或者b中对应位置的字符进行交换,交换必须进行,问能否使得ab相同. 思路:对于每一个位置,如果三个字符都不相同,那一定不同,如果有两个相同且不是ab相同,则合法,否则不合法,如果三个字符都相同,那么合法. #include<bits/stdc++.h> #define LL long long #define dl double void rd(int &x){ x=;;char ch=g…