Codeforces Round #259 (Div. 2)---2014.08.01---A、B。。。下次争取做到C

来源:互联网 发布:好看的恐怖电影知乎 编辑:程序博客网 时间:2024/05/19 11:48

Codeforces Round #259 (Div. 2)---2014.08.01---A、B。。。下次争取做到C

        2014.08.01、2014.08.03、2014.08.04

        Codeforces的账号是名字的拼音,记一笔。

        嗯这是我第一次参加codeforces的线上赛,呵呵,因为UTC的15:30是大半夜,果然第二天感觉自己的脑袋很沉很沉。不过现在觉得参加个什么都是很自然的事,不像大一的时候各种犹豫,还不是因为所有为了不肯努力的敷衍都是借口。。。。

 A. Little Pony and Crystal Mine

题目链接

         题意:很清晰,给出一个奇数数字,打印出题目要求的那种菱形。这不是学语法的时候的例题吗,具体针对什么语法忘了,然后再找出相应的位置数字方面的规律就好。。。。。我竟然一个小时才过。

        细节+代码:

#include<stdio.h>int main(){int n,i,j;scanf("%d",&n);for(i = 0;i<=n/2;i++){ //打印正三角部分。for(j = 1;j<=n/2-i;j++) //每行"D"之前的“*”printf("*");for(j = 1;j<=i*2+1;j++) //每行的“D”printf("D");for(j = 1;j<=n/2-i;j++) //每行"D"之后的“*”printf("*");printf("\n");}for(i = n/2+1;i<=n-1;i++){ //同理打印倒三角部分for(j = 1;j<=i-n/2;j++)printf("*");for(j = 1;j<=n-2*(i-(n/2));j++)printf("D");for(j = 1;j<=i-n/2;j++)printf("*");printf("\n");}return 0;}

B. Little Pony and Sort by Shift

题目链接

        题意:给出一串数字,数字的数目也给出,对于这串数字,只能做一种移动,就是把最尾部的数字放到最前面,问这串数字能不能经过这样的移动,变成一串不递减(即以相等或递增顺序排列的数字串),如果可以,那最少要经过几次移动。

        思路:我是先写一串不递减的数字串,然后不断地把最前面的放到最后面,就是逆着题意倒推看看怎样的数字串可以通过题意的移动得到不递减的数字串,总结需要移动的次数。可能出现的情况是,不论这个数串的最大值出现在什么位置,这个位置之前的数字和之后的数字都分别是不递减的,这个位置后的数字的最大值必须小于等于这个位置前的数字的最小值,满足以上条件才可以通过移动变成不递减的一串,这里包括了这一串数字都是相同的这种情况。

        好吧,这道题目是比赛完才A的,比赛的时候读错题意,以为有几个数字,就是从1到几,其实对数字的数值没限定,也有可能是相同的数字。其实当测试数据错的时候,可以看到错误的那组测试数据的,我不知道这个结果还question,竟然得到了回答,cf真不错!

        还有些细节标在代码里:

#include<stdio.h>int main(){int i,n,loc,a[110000],max,frontmin,behindmax,f,j,locfirst;scanf("%d",&n); //注意a数组的开的大小,,呵呵max = 0;for(i = 0;i<=n-1;i++){scanf("%d",&a[i]);if(a[i]>max)max = a[i];}f = 0;for(i = 0;i<=n-1;i++){if(a[i]==max&&f==0){ //如果最大值在开头出现,那么也可以出现在结尾处f = 1;locfirst = i+1;loc = i+1;}if(a[i]<max&&f==1)f = -1;if(a[i]==max&&f==-1){ //但是不能被其他数字隔断出现在中间,if(locfirst!=1){printf("-1\n");return 0;}for(j = i;j<=n-1;j++){ //看了测试数据被提醒了这种情况。if(a[j]!=max){ //这两种情况对移动的次数也有影响,printf("-1\n"); //如果最大值只出现一次,(这个一次指的是不间断的一次),那么位置是可以往后推的,return 0; //但是如果开头一次,结尾一次,是不可以往后推的,} //这个也是WA数据提醒的。这道题目重要的就是这里的表达吧。}}if(f>0&&i>0&&a[i]==max&&a[i-1]==max)loc = i+1;}for(i = 0;i<=n-1;i++){if(i!=0&&a[i]<a[i-1]&&a[i-1]!=max){printf("-1\n");return 0;}}frontmin = a[0];for(i = 0;i<=loc-2;i++){if(a[i]<frontmin)frontmin = a[i];}behindmax = a[loc];for(i = loc;i<=n-1;i++){if(a[i]>behindmax)behindmax = a[i];}if(behindmax>frontmin){printf("-1\n");return 0;}printf("%d\n",n-loc);return 0;}

         下次再参加,把有道的屏幕划词准备好。。。明天看点别的,。。

 

 

 

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 情侣之间感情淡了怎么办 雪纺布料刮坏了怎么办 棉麻布料坏了怎么办 主板针脚弯了怎么办?能修吗? 脸颊两侧毛孔大还有黑头怎么办 脸颊和鼻子粗毛孔大怎么办 十二时辰对照五脏养生在国外怎么办 在学校接吻怕被看到怎么办 楼房圈梁被破坏了怎么办 买了农村的房子怎么办 邻居建房不用共用墙怎么办 腿被蚂蚁咬了怎么办 火车订2票不挨着怎么办 手机全变成英文该怎么办 这些旧电脑该怎么办用英语翻译 落水已把人救出该怎么办 手机落水后已开过机怎么办? 车被洪水冲走了怎么办 感到生活无聊无事可干怎么办 邻居不除排水沟影响到自己怎么办 开过光的玉碎了怎么办 一脚刹车踩到底怎么办 p53基因型cc型该怎么办 人不小心掉进火山怎么办 奥林巴斯相机相片被锁了怎么办 文明53格外的奢侈品怎么办 答应了要请客钱不够怎么办 在家里面着急没办法干活怎么办 1岁宝宝脾气暴躁怎么办 档案不在中国海峡人才市场怎么办 海丰西中街吃鸡钱包给拿了怎么办? 朝鲜成为经济强国中国怎么办 窗户上有哈气水怎么办 阳台下水管声音好大怎么办 一开水龙头会响怎么办 海里遇到暗流怎么办贴吧 东海通忘记客户号怎么办 证券客户号忘了怎么办 热收缩机有空气怎么办 韩国国籍签证到期想回国怎么办 休闲裤裤脚长了怎么办