A.
Bachgold Problem

任何一个数都可以由1和2组成,由于n是大于等于2的,也就是可以由2和3组成。要求最多的素数即素数越小越好,很明显2越多越好,如果n为奇数则再输出一个3即可。

int main()
{
int n;
while(~scanf("%d",&n))
{
int k=n/2;
printf("%d\n",k);
for(int i=1;i<k;i++)
printf("2 ");
if(n%2) printf("3\n");
else printf("2\n");
}
return 0;
}

B. Parallelogram is Back

唉,小心使得万年船,可是智者千虑必有一失。被CF坑怕了于是再次被坑。

题意:给你三个不同的点,不在同一条直线上,求最多有多少种方法加一个点使得四个点构成平行四边形。

思路:其实这三个不在同一条直线上那么必然会有三种情况(某一个点以另外两个点所连成的边的对称点)。

但前几次CF被数据范围坑惨了,看到题目的范围以为所有的点必须在这个范围内,结果WA了一发,回过头发现是输出在这个范围内而已。

int main()
{
int x1,y1,x2,y2,x3,y3;
scanf("%d%d%d%d%d%d",&x1,&y1,&x2,&y2,&x3,&y3);
int a1,b1,a2,b2,a3,b3,f1=0,f2=0,f3=0;
a1=x2+x3-x1,b1=y2+y3-y1;//点关于线段对称
a2=x1+x3-x2,b2=y1+y3-y2;
a3=x2+x1-x3,b3=y2+y1-y3;
printf("3\n");
printf("%d %d\n",a1,b1);
printf("%d %d\n",a2,b2);
printf("%d %d\n",a3,b3);
return 0;
}

C. Voting

题意:还是有点不明白。投票选举,有n个候选人,每个人每次可以否定另外一个人,被否定的人没有资格进行选举了,每轮从编号为1到n开始阐述。题目说轮到某个人时这个人不再有选举权,这里搞得我稀里糊涂的,还是英语太菜。

思路:没看懂题结合样例以为贪心策略就是每次都把最靠前的干掉,然后看最后谁留下来了。然而终判跪在21组。看了很多人的提交代码(基本上一个样),大概是题意不清,按AC代码的理解思路应该是每次干掉比自己编号大的,如果没有再循环找。但这里就容易超时了,于是用队列分别把位置存起来,每次比较把小的加入队列里,看最后谁剩下来了。

int main()
{
int n;
while(~scanf("%d%s",&n,s))
{
memset(v,0,sizeof(v));
queue<int>qd;
queue<int>qr;
for(int i=0;i<n;i++)
{
if(s[i]=='D') qd.push(i);
else qr.push(i);
}
while(qr.size()||qd.size())
{
if(!qd.size()||!qr.size())
{
if(!qd.size()) printf("R\n");
else printf("D\n");
break;
}
int pd=qd.front();
qd.pop();
int pr=qr.front();
qr.pop();
if(pr<pd) qr.push(pr+n);//很巧妙的解决了循环问题
else qd.push(pd+n);//大的被干掉了。
}
}
return 0;
}

咸鱼终究无法翻身,C题做出来了又是在终判的时候跪了,居然还能跑20多组样例。。D题跪了两发最终没过,得用二分写。

Codeforces Round #388 (Div. 2) A+B+C!的更多相关文章

  1. Codeforces Round #388 (Div. 2)

      # Name     A Bachgold Problem standard input/output 1 s, 256 MB    x6036 B Parallelogram is Back s ...

  2. Codeforces Round #388 (Div. 2) - C

    题目链接:http://codeforces.com/contest/749/problem/C 题意:给定一个长度为n的D/R序列,代表每个人的派别,然后进行发表意见,顺序是从1到n.每个人到他的回 ...

  3. Codeforces Round #388 (Div. 2) - B

    题目链接:http://codeforces.com/contest/749/problem/B 题意:给定平行四边形的3个点,输出所有可能的第四个点. 思路:枚举任意两个点形成的直线,然后利用这两个 ...

  4. Codeforces Round #388 (Div. 2) - A

    题目链接:http://codeforces.com/contest/749/problem/A 题意:给定一个数n,求把n分解成尽量多的素数相加.输入素数个数和具体方案. 思路:因为要尽量多的素数, ...

  5. Codeforces Round #388 (Div. 2) A,B,C,D

    A. Bachgold Problem time limit per test 1 second memory limit per test 256 megabytes input standard ...

  6. Codeforces Round #388 (Div. 2) 749E(巧妙的概率dp思想)

    题目大意 给定一个1到n的排列,然后随机选取一个区间,让这个区间内的数随机改变顺序,问这样的一次操作后,该排列的逆序数的期望是多少 首先,一个随机的长度为len的排列的逆序数是(len)*(len-1 ...

  7. Codeforces Round #388 (Div. 2) D

    There are n people taking part in auction today. The rules of auction are classical. There were n bi ...

  8. Codeforces Round #388 (Div. 2) C. Voting

    题意:有n个人,每个人要么是属于D派要么就是R派的.从编号1开始按顺序,每个人都有一次机会可以剔除其他任何一个人(被剔除的人就不在序列中也就失去了剔除其他人的机会了):当轮完一遍后就再次从头从仅存的人 ...

  9. Codeforces Round #366 (Div. 2) ABC

    Codeforces Round #366 (Div. 2) A I hate that I love that I hate it水题 #I hate that I love that I hate ...

随机推荐

  1. C. Alyona and mex

    http://codeforces.com/contest/740/problem/C 构造思维题. 第一直觉就是区间长度+1的最小值就是答案. 然而不知道怎么去构造这个序列. 其实就是每个区间,都要 ...

  2. CentOS 6.9 --Squid代理服务器

    主机名 IP地址  网关   DNS   服务类型  Master eth0:192.168.17.130(VMnet4) eth1:192.168.30.130(NAT) 192.168.30.2 ...

  3. hash系列集合的性能优化

    hash系列的集合: HashSet.LinkedHashSet     采用hash算法决定元素在集合中的存储位置 HashMap.LinkedHashMap.Hashtable   采用hash算 ...

  4. 【转】Iconfont

    Iconfont Iconfont 是指用字体文件取代图片文件,来展示图标.特殊字体等元素的一种方法.很多网站都会用它,比如手淘.新浪微博等. 在使用它之前,先来了解一下它的优缺点: 优点:(1)文件 ...

  5. .htaccess重写规则失败

    开启mod_rewrite.so LoadModule rewrite_module libexec/apache2/mod_rewrite.so 重启服务 sudo apachectl restar ...

  6. laravel学习笔记(一)

    laravel 简述 优点:优雅.简洁.工程化(项目架构,协同开发) 版本:2011 June 1.0 ,LTS(long time) ,laravel 5.4 功能:队列.搜索.数据库搜索.定时脚本 ...

  7. Javaweb学习笔记4—Reuest&Response

    今天来讲javaweb的第四段学习. Request和Response还是比较重要的 老规矩,首先先用一张思维导图来展现今天的博客内容. ps:我的思维是用的xMind画的,如果你对我的思维导图感兴趣 ...

  8. Javaweb之xml

        1 XML概述     1.1 XML是什么? eXtensible Markup Language可扩展标记语言          1.2 XML作用         主要是用于描述数据,而 ...

  9. jdbc获取数据具体过程

    下面是个最简单的使用jdbc取得数据的应用.在例子之后我将分成4步,分别是①取得连接,②创建PreparedStatement,③设置参数,④执行查询,来分步分析这个过程.除了设置参数那一步之外,其他 ...

  10. loadrunner:文本检查点web_reg_find和web_find两个函数的区别

    web_reg_find是先注册(register)后查找的:使用时将它放在请求语句的前面. 而web_find是查找前面的请求结果:使用时将它放在请求语句的后面. 另二者的参数也完成不一样的,web ...