CodeForces 22、23部分题解
来源:互联网 发布:unity3d上海 编辑:程序博客网 时间:2024/05/03 07:03
找严格第二小的。。。注意只有一种情况,可以sort排序然后unique输出。
int a[N];int main(){ int n; while(~scanf("%d",&n)) { for(int i=0;i<n;i++) scanf("%d",&a[i]); sort(a,a+n); if(n==1||a[0]==a[n-1]) printf("NO\n"); else { unique(a,a+n)-a; printf("%d\n",a[1]); } } return 0;}
找子集中出现次数最多的,只求一个数量,数据范围只有100,用map<string,int>。
const int N=1e6+10;int main(){ string a; cin>>a; map<string,int>q; int len=(int)a.size(); int ma=0; for(int i=0;i<len;i++) for(int j=0;j<len;j++)//枚举所有区间。。 { string s; for(int k=i;k<=j;k++) s+=a[k]; q[s]++; if(q[s]>=2) ma=max(ma,j-i+1); } printf("%d\n",ma);}//写起来是方便,不过时间复杂度略高。。
规律题,,开始没看懂题意,,CF上的标签是构图。于是枚举了几组,大胆猜想了一下结果是(n-2),1A。
int main(){ int t,n; scanf("%d",&t); while(t--) {scanf("%d",&n); if(n<=2) printf("0\n"); else printf("%d\n",n-2); } return 0;}
这题真心不错,题意很好懂,但没思路。。
题意:有2n-1个箱子,每个箱子里有一定数量的苹果和橘子。问是否存在一种方案选n个箱子使得苹果的数量不小于苹果总数的一半并且橘子的数量不小于橘子总数的一半。。
思路:排序即可,不管按橘子数递增或者苹果数递增。接下来证明:首先下标从1开始,2n-1一定是奇数,排序后最优情况一定要选最后一个。我们有两种选法:①选所有的奇数,②选所有的偶数和最后一个奇数箱子(因为要选n个箱子)。一下我们按橘子数递增排序(按苹果数一样的)进行讨论,很容易证明:一号方案和二号方案橘子数肯定符合条件的,比如总共有5个箱子,那么选奇数的话:橘子数a1+a3+a5>a2+a4,如果选偶数:a2+a4+a5>a1+a3.那接下来看苹果数咯,苹果数只有两种情况,所以这两种方案必有一种符合。
const int N=1e7+10;struct zz{ int x,y,id;} a[N];int cmp1(zz a,zz b){ return a.x<b.x;}int main(){ int t,n; scanf("%d",&t); while(t--) { scanf("%d",&n); ll sum1=0,sum2=0; for(int i=1; i<=2*n-1; i++) { scanf("%d%d",&a[i].x,&a[i].y); a[i].id=i; sum1+=a[i].x,sum2+=a[i].y; } sort(a+1,a+2*n,cmp1); ll s1=0,s2=0; for(int i=1; i<=2*n-1; i+=2) { s1+=a[i].x; s2+=a[i].y; } printf("YES\n");//必然存在符合条件的情况。 if(s1*2>=sum1&&s2*2>=sum2) { for(int i=1;i<=2*n-1;i+=2) { printf("%d ",a[i].id); } } else { for(int i=2;i<=2*n-1;i+=2) { printf("%d ",a[i].id); } printf("%d",a[2*n-1].id); } printf("\n"); } return 0;}
水题之路。。整天水题不会有提高的。。还是多学几个牛逼的算法吧!
- CodeForces 22、23部分题解
- Codeforces Round332 部分题解
- Codeforces Round #418部分题解
- Codeforces Educational Codeforces Round 16 部分题解
- codeforces Round 213 div2部分题解
- Codeforces Round #216 (Div. 2)部分题解
- Codeforces Round #219div1 部分题解
- Codeforces Round #277.5 (Div. 2)部分题解
- Codeforces Good Bye 2014 部分题解
- codeforces #549 Looksery Cup 部分题解
- Codeforces Round #359 (Div. 2) 部分题解
- Codeforces Round #378 (Div. 2) 部分题解
- Codeforces Good Bye 2016(部分题解)
- Codeforces Round #386 (Div.2)部分题解
- Codeforces Good Bye 2016部分题解
- Codeforces 部分题目题解(口胡)
- codeforces Round 211 Div 2部分题解(持续更新中.......)
- Codeforces Round #227 (Div. 2)(部分题解)
- python访问sqlserver
- 高德百度坐标系转换方法
- 【宽搜高级利用】最后的战犯
- java垃圾回收机制--可达性算法
- 如何查找 Sharepoint 内容数据的服务器。
- CodeForces 22、23部分题解
- QWT的使用
- C#通用方法扩张
- 面试宝典之实用测试技术
- Yii终止运行,进行跳转,不使用exit进行终止程序。
- 关于C++ const 的全面总结
- Android:表情选择控件
- net实现基础的舆情监测系统思路
- Linux下C语言使用openssl库进行MD5校验