BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #37223同步于 2010/3/29
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

苍天啊大地啊!为什么……这是为什么……为什么这样的水题,我

wysln
2010/3/29镜像同步4 回复
苍天啊大地啊!为什么……这是为什么……为什么这样的水题,我都wrong answer Description 最近xiaoming在912呆得实在是很无聊,他决定干点大事,于是他拉上了dreamzk,实行了北邮前所末有的大计划-简称“代表北邮,冲出地球,走向宇宙”超级无敌计划,他们用最近研究出来的算法,去发射了一枚火星探测器。但是火星上的地型复杂,他们机器人上所装载的人工智能不足以应付,所以他们打算直接控制机器人的运动. 机器人的初始坐标为(x,y),(x轴为东西,y为南北)小明的控制的命令如下n,s,w,e分别表示向北,向南,向西,向东走一步,一个步长为一个单位长度。 Input 多组测试数据。 每次数据一行,格式为 x y control。x,y为整数(绝对值不超过1000000)表示机器人的初始坐标,control为一个不包含空格的由四个方向字母所组成的控制字串,长度不超过1000。 Output 第i组数据输出前,请先输出“Case I:”. 机器人在执行完命令后的坐标位置。 Sample Input 4 2 nnnwwwnnneees 3 5 ssseeessswww Sample Output Case 1: 4 7 Case 2: 3 -1
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
wysln机器人#1 · 2010/3/29
#include<stdio.h> int main() { long x=0,y=0; int i=0,j=0,k=0; char str[1000]={0}; scanf("%ld %ld %s",&x,&y,str); while(x!=EOF) { k++; i=0; while(str[i]!='\0') { if(str[i]=='n') y++; if(str[i]=='s') y--; if(str[i]=='e') x++; if(str[i]=='w') x--; i++; } printf("Case %d:\n",k); printf("%ld %ld\n",x,y); for(j=0;j<i;j++) str[j]=0; scanf("%d %d %s",&x,&y,str); } }
wysln机器人#2 · 2010/3/29
大航海时代 Submit: 478 Accepted:214 Time Limit: 1000MS Memory Limit: 65536K Description dalong最近迷上了航海,他梦想成为福赛特那样的冒险家。可他实在运气实在太差了,第一次出海就碰到了一群海盗,我们的故事就从这里开始。 为了活命,dalong只有把自己的老本拿出来孝敬他们喽。Dalong出发前带了很多的金币,他把这些金币分装在了n个钱袋里(编号从1-n)。在贿赂这些海盗前,他得知这些海盗们奉行有福同享,有难同当的原则,所以他们每次抢到钱后都会平分,如果抢到的钱不能平分,那他们就会十分的愤怒并且杀掉那个被抢的人。而如果可以平分,无论钱有多少他们都会十分的高兴并且放掉被抢的人。而dalong显然希望能够活命喽。虽然dalong有n个钱袋,但他必须按顺序从这n个钱袋里取钱,假设正好取到第m个钱袋后金币能够被强盗们平分。那么dalong就不用再取金币了,现在dalong告诉你n个钱袋里的金币,那他最少需要取几个钱袋就可以逃命呢? Input 多组数据测试,第一行是一个数t(1<=t<=60),表示有t组数据。 每组数据第一行有两个数n(1<=n<=1000), k(1<=k<=2000),分别表示钱袋的总数n,海盗的总数k; 第二行是n个正整数(不大于50),表示每个钱袋的金币数。 Output 每组输出前加一个Case i,表示第i组数据。 如果dalong能够满足海盗的要求,输出他最少需要取几个钱袋。如果dalong不能满足强盗的要求,输出"Bad boy";(输出格式见sample output) Sample Input 3 4 3 1 4 7 5 3 7 7 2 5 4 11 1 9 2 7 Sample Output Case 1: Need 3 bags Case 2: Need 1 bag Case 3: Bad boy
wysln机器人#3 · 2010/3/29
#include<stdio.h> int main() { int t=0,i,j,bags=1,k,n,row[1000]={0},sum=0; scanf("%d",&t); for(i=1;i<=t;i++) { scanf("%d %d",&n,&k); for(j=1;j<=n;j++) row[j]=0; for(j=1;j<=n;j++) scanf("%d",&row[j]); bags=1; sum=0; for(j=1;j<=n;j++) { sum=sum+row[j]; if(sum%k!=0) bags++; else break; } printf("Case %d:\n",i); if(bags>n) printf("Bad boy\n"); else printf("Need %d bags\n",bags); } scanf("%d",&t); }
a206206机器人#4 · 2010/3/29
在算法发了,怎么这里也发