这道是2014年校赛最简单的一道。昨天脑子转不过来,后来躺着想了一会就有思路了。做题关键是要心静吧。
如题:
滨滨来到酱油公司之后,滨滨在闲暇之余到山洞探险,捡到一本有破损的程序设计宝典(20000多页!)。滨滨比较细心,他注意到:书的第100页和第101页在同一张纸上,但第101页和第102页不在同一张纸上。
Input
仅一行,包含2个整数分别为X和Y的值,表示滨滨想学习第X页到第Y页的内容。(0<X, Y<=20000)
Output
滨滨比较懒,不喜欢天天抱着一本大部头,输出他至少要撕下带走的纸张。格式为
n - p q
其中n代表撕下纸张的编号,p代表起始页码,q代表结束页码。
Sample Input
80 89
Sample Output
1 - 80 81 2 - 82 83 3 - 84 85 4 - 86 87 5 - 88 89 End
与其每种页码分配可能都考虑一遍,不如归结为一种:偶数开始(若起始值为奇数向前减一页),奇数结束(若结束页为偶数则向后加一页)。
就这点算法,bingo...
我的代码:
#include <stdio.h> void main() { int x,y; scanf("%d%d",&x,&y); if (x%2!=0) x-=1; if (y%2==0) y+=1; for (int i = 0;i<(y-x+1)/2;i++) { printf("%d - %d %d\n",i+1,x+i*2,x+i*2+1); } }
Accepted
时间: 2024-10-22 22:29:13