摘要: Description打败万恶的ghost以后,将军准备回寝室告诉大伙儿这个消息,没想到杯具又发生了… 你知道有种鬼叫“路鬼”吗?让人莫名其妙的迷路,将军就被这种鬼上身了。将军本来要上楼的,但是因为鬼上身,他要不就上一层楼,要不就下一层楼,这个是随机的,他不能控制自己啦! 假设将军住在第M楼,刚开始将军在K楼,因为体力原因,将军只能上或者下N次楼,假设东6宿舍共有100层。现在问当体力消耗完的时候,将军刚好回到寝室那一层有多少种走法。 例如:将军住在5楼,将军能上或者下5次楼,现在在1楼, 那么将军将回不到寝室啦,为什么?我也不知道。Input有多组测试数据,每组测试数据共一行,为M,N,K( 阅读全文
posted @ 2013-06-23 22:15 失眠的娃儿 阅读(302) 评论(0) 推荐(0) 编辑
摘要: Description一本书的页码是从自然数1开始顺序编码直到自然数n.书的页码按照通常习惯编排,每个页码都不含多余的前导数字0。例如,第6页用数字6表示,而不是06或006等。数字记数问题要求给定书的总页码n,计算出书的全部页码中分别用到多少次数字0,1…..9。Input输入只有一个数字书的全部页码n(这里1long a[10]={0};void deal(long n){ a[n%10]++; n=n/10; while(n) { a[n%10]++; n=n/10; }}long pow1(int n){ long k=1; while(n) { k=k*10; n--;... 阅读全文
posted @ 2013-06-23 22:07 失眠的娃儿 阅读(263) 评论(0) 推荐(0) 编辑
摘要: Description有一只青蛙掉进了一口水井里,自然青蛙不想在水井里呆一辈子。于是它尝试从水井里跳出来。但是水井的墙壁又是十分的光滑,它每次跳上去之后变会滑落一段距离。已知青蛙每次可跳的高度为H,每次向上跳后在井壁滑落的距离为X,水井的高度为L!请你设计一个程序来计算青蛙多少次可以跳出水井! 例如:青蛙可跳的高度为3,每次滑落2,水井高5米。那么它需要跳3次即可出水井Input多组测试数据,每组测试数据一行,为L, H ,X(均为正整数)中间以空格隔,L水井的高度,H表示每次青蛙可跳的高度,X每次滑落的高度 输入均为0时结束,即 0 0 0时程序结束Output对应每组测试数据,输出青蛙出水 阅读全文
posted @ 2013-06-23 22:06 失眠的娃儿 阅读(265) 评论(0) 推荐(0) 编辑
摘要: Description辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间,在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,你应该可以让采到的草药的总价值最大。” 如果你是辰辰,你能完成这个任务吗?Input输入的第一行有两个整数T(1 using namespace std;int dp[1001]={0};int main(){ int t,m; cin&g 阅读全文
posted @ 2013-06-23 22:05 失眠的娃儿 阅读(160) 评论(0) 推荐(0) 编辑
摘要: Description一辆重型卡车预穿过长度大于1000公里小于1500公里的沙漠,卡车耗油为1升/公里,卡车总载油能力为500升。显然卡车装一次油是过不了沙漠的,因此司机必须设法在沿途建立几个储油点,使卡车能顺利穿越沙漠,试问司机如何建立这些储油点?每一个储油点应存多少汽油,才能使卡车以消耗最少汽油的代价通过沙漠? 请通过编程技术及 打印储油点的序号,各储油点距离沙漠始点的距离以及储油点的储油量.Input预穿过沙漠的长度公里整数Dis(大于1000公里小于1500公里).当输入0时程序结束.Output储油点序号 起始点到储油点的长度 储油点的储油量 ,这三个变量在一行中输出,每两个数据中 阅读全文
posted @ 2013-06-23 22:04 失眠的娃儿 阅读(373) 评论(0) 推荐(0) 编辑
摘要: Description 小明的班级参加一个活动,每人要喝过一瓶可乐,恰逢可乐促销,3瓶可乐空瓶可以换一瓶可乐,小明想节约钱,所以想买尽可能少的可乐让每人至少喝过一瓶可乐,问买至少多少瓶可乐够n人至少每人喝一瓶Inputn:表示n个人要喝可乐(3 int k,n;int sort(int x){ int t=0; if(x=3) { k=k+x/3; t=t+x%3; x=x/3; } t=t+x; if(t<3)return k; else sort(t);}void main(){ int i; while(scanf("%d",&n)!=EOF) { fo 阅读全文
posted @ 2013-06-23 22:02 失眠的娃儿 阅读(182) 评论(0) 推荐(0) 编辑
摘要: Description在一些应用中,特别是现在的密码学中,常常需要用超过100位的整数来做乘法,以此来对数据加密。现在有两个小于等于100位的大整数a和b(位数相同),请写程序计算出这两个大整数乘积的结果。Input输入有三行第一行是大整数位数第一个大整数第二个大整数Output两个大整数的结果Sample Input1011111111111111111111Sample Output1234567900987654321#include#includevoid main(){ int i,j,k,i1,m,i2,n,a[205]={0}; long b,c,d; char s1[100], 阅读全文
posted @ 2013-06-23 22:01 失眠的娃儿 阅读(208) 评论(0) 推荐(0) 编辑
摘要: Description设n是一个正整数。现要求将n分解为若干个自然数的和,且使这些自然数的乘积最大。 对于给定的正整数n,编程计算最优分解方案。Input第1行是正整数n。(nlong b[160]={0};long calculate(int m,int n){ long k; long i,j,d=0,p=0,t; b[0]=3; for(i=1;i=0;i--) if(b[i]){p=i;break;} return p;}void main(){ long k1,k2; long i,p,n; scanf("%ld",&n); if(n=0;i--) { i 阅读全文
posted @ 2013-06-23 22:00 失眠的娃儿 阅读(476) 评论(0) 推荐(0) 编辑
摘要: Description某石油公司计划建造一条由东向西的主输油管道。该管道要穿过一个有n 口油井的油田。从每口油井都要有一条输油管道沿最短路经(或南或北)与主管道相连。如果给定n口油井的位置,即它们的x 坐标(东西向)和y 坐标(南北向),应如何确定主管道的最优位置,即使各油井到主管道之间的输油管道长度总和最小的位置?证明可在线性时间内确定主管道的最优位置。给定n 口油井的位置,编程计算各油井到主管道之间的输油管道最小长度总和。Input第1 行是油井数n,1#includeint a[10001][2]={0},b[10000][2];void main(){ int i,j,z,n,t,k; 阅读全文
posted @ 2013-06-23 21:58 失眠的娃儿 阅读(223) 评论(0) 推荐(0) 编辑
摘要: Description给出一个三角形的三个点在平面内的坐标。请你来求一求这个三角形的面积是多少。Input多组输入。每行有6个整数。前面两个整数是一个点的坐标。中间两个整数是另一个点的坐标。最后两个整数是最后一个点的坐标。Output三角形的面积,保留两位小数。Sample Input0 0 2 0 0 11 2 5 9 6 8Sample Output1.005.50#include#include#includeusing namespace std;int main(){ double a[3][2]; while(cin>>a[0][0]>>a[0][1]> 阅读全文
posted @ 2013-06-23 21:56 失眠的娃儿 阅读(237) 评论(0) 推荐(0) 编辑
摘要: Description奶牛们有一个习惯,那就是根据自己的编号选择床号。如果一头奶牛编号是a,并且有0..k-1一共k张床,那么她就会选择a mod k号床作为她睡觉的地点。显然,2头牛不能睡在一张床上。那么给出一些奶牛的编号,请你为她们准备一间卧室,使得里面的床的个数最少。Input第一行是奶牛的个数n(1#includelong mo[1000000];int main(){ long i,n,max=0,a[5001],k,j; scanf("%ld",&n); for(i=0;imax?abs(a[i]-a[j]):max; } } k=n; while(k& 阅读全文
posted @ 2013-06-23 16:18 失眠的娃儿 阅读(237) 评论(0) 推荐(1) 编辑
摘要: Description有3個桶子用來裝回收的玻璃瓶,玻璃瓶的顏色有三種:棕色(Brown)、綠色(Green)、透明色(Clear)。在這個問題裡我們會告訴你每個桶子裏的玻璃瓶的顏色及數量,現在要搬移桶子裏的玻璃瓶使得最後每個桶子裡都只有單一顏色的玻璃瓶,以方便回收。你的任務就是要算出最小搬移的瓶子數。你可以假設每個桶子的容量無限大,並且總共搬移的瓶子數不會超過231。Input每筆測試資料一行,每行有9個整數.前3個代表第1個桶子裡Brown, Green, Clear顏色的瓶子數。接下來的3個數代表 第2個桶子裡Brown, Green, Clear顏色的瓶子數。最後的3個數代表第3個桶子 阅读全文
posted @ 2013-06-23 16:16 失眠的娃儿 阅读(359) 评论(0) 推荐(0) 编辑
摘要: Description在一个封闭的房间里,gogo给大家表演了他的屁遁术,人果然一下没影了,但是他留下的“生化武器”,却以每秒1米的速度向上下左右扩散出去。为了知道自己会不会被“毒”到,你果断写了个算法计算出了“毒气”在t秒时间内可以到达的所有地方。Input有多组测试数据第一行输入n,m,t(0int a[4][2]={1,0,-1,0,0,1,0,-1},u[30][30];char b[30][30];int m,n,t;void print(){ int i,j; for(i=0;i0&&k==0)printf("No\n\n"); else { f 阅读全文
posted @ 2013-06-23 16:15 失眠的娃儿 阅读(234) 评论(0) 推荐(0) 编辑