CodeForces
22A

找严格第二小的。。。注意只有一种情况,可以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;
}

CodeForces
23A

找子集中出现次数最多的,只求一个数量,数据范围只有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);
}//写起来是方便,不过时间复杂度略高。。

CodeForces
23B

规律题,,开始没看懂题意,,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;
}

CodeForces
23C

这题真心不错,题意很好懂,但没思路。。

题意:有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部分题解的更多相关文章

  1. Codeforces Round #543 Div1题解(并不全)

    Codeforces Round #543 Div1题解 Codeforces A. Diana and Liana 给定一个长度为\(m\)的序列,你可以从中删去不超过\(m-n*k\)个元素,剩下 ...

  2. Codeforces Round #545 Div1 题解

    Codeforces Round #545 Div1 题解 来写题解啦QwQ 本来想上红的,结果没做出D.... A. Skyscrapers CF1137A 题意 给定一个\(n*m\)的网格,每个 ...

  3. Codeforces Round #539 Div1 题解

    Codeforces Round #539 Div1 题解 听说这场很适合上分QwQ 然而太晚了QaQ A. Sasha and a Bit of Relax 翻译 有一个长度为\(n\)的数组,问有 ...

  4. [Codeforces Round #461 (Div2)] 题解

    [比赛链接] http://codeforces.com/contest/922 [题解] Problem A. Cloning Toys          [算法] 当y = 0 ,   不可以 当 ...

  5. Codeforces 7E - Defining Macros 题解

    目录 Codeforces 7E - Defining Macros 题解 前言 做法 程序 结尾 Codeforces 7E - Defining Macros 题解 前言 开始使用博客园了,很想写 ...

  6. Educational Codeforces Round 64 部分题解

    Educational Codeforces Round 64 部分题解 不更了不更了 CF1156D 0-1-Tree 有一棵树,边权都是0或1.定义点对\(x,y(x\neq y)\)合法当且仅当 ...

  7. Educational Codeforces Round 64部分题解

    Educational Codeforces Round 64部分题解 A 题目大意:给定三角形(高等于低的等腰),正方形,圆,在满足其高,边长,半径最大(保证在上一个图形的内部)的前提下. 判断交点 ...

  8. Codeforces Beta Round #62 题解【ABCD】

    Codeforces Beta Round #62 A Irrational problem 题意 f(x) = x mod p1 mod p2 mod p3 mod p4 问你[a,b]中有多少个数 ...

  9. Codeforces Good Bye 2016 题解

    好久没有fst题了...比赛先A了前4题然后发现room里有人已经X完题了没办法只能去打E题,结果差一点点打完...然后C题fst掉了结果就掉rating 了...下面放题解 ### [A. New ...

随机推荐

  1. Web service简介 与servletContext的参数

    Web service顾名思义是基于web的服务,它是一种跨平台,跨语言的服务. 我们可以这样理解它,比如说我们可以调用互联网上查询天气信息的web服务,把它嵌入到我们的B/S程序中,当用户从我们的网 ...

  2. Qt窗口-仅显示关闭按钮

    环境: Qt5.3.1, mac os x 10.10.1 setWindowFlags(Qt::Window | Qt::WindowTitleHint | Qt::CustomizeWindowH ...

  3. Android从图库选择照片

    从机里取照片,开头用网上找的代码测试,导致类似下面这样的Crash:java.lang.RuntimeException: Failure delivering result java.lang.Se ...

  4. HDU 5416 CRB and Tree (技巧)

    题意:给一棵n个节点的树(无向边),有q个询问,每个询问有一个值s,问有多少点对(u,v)的xor和为s? 注意:(u,v)和(v,u)只算一次.而且u=v也是合法的. 思路:任意点对之间的路径肯定经 ...

  5. 原创:E325: ATTENTION vim超完整超给力的问题与解决方法

    又到了老葵花哥哥开课的时间 这是给大家提供一个企业常见的错误 我相信大家生活还编程中会长期使用接触这个错误 这里我们经常用的两个选项 (E)dit any way 编辑原来的文件,忽略刚刚做的修改 ( ...

  6. Asp.Net Core 入门(二)——Startup.cs做了什么

    上篇介绍了Program.cs中Main做了什么,这篇我们来讨论下Startup.cs它又做了什么呢? 我们新建一个Asp.Net Core Mvc项目,先来开一下Startup的代码 public ...

  7. 有n个整数,使其前面各数顺序向后移n-m个位置,最后m个数变成最前面的m个数

    题目:有n个整数,使其前面各数顺序向后移n-m个位置,最后m个数变成最前面的m个数 public class 第三十六题数组向后移m个位置 { public static void main(Stri ...

  8. Microsoft Windows Server 系统基本配置

    Microsoft Windows Server 系统基本配置 环境基本配置 桌面和显示属性 更新服务器名称 更新用户密码 创建密码重置盘 设置网络类型 TCP/IP设置 ping和ipconfig命 ...

  9. 微信小程序工具真机调试提示page "xxx/xxx/xxx" is not found

    解决方法: pages对象添加该页面

  10. 去除ie下select框箭头

    select::-ms-expand { display: none;}兼容ie10及以上