杭电OJ题 1391 Number Steps 解题报告
2012-12-09 22:48
513 查看
Number Steps
[align=center]Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 2697 Accepted Submission(s): 1656
[/align]
[align=left]Problem Description[/align]
Starting from point (0,0) on a plane, we have written all non-negative integers 0, 1, 2,... as shown in the figure. For example, 1, 2, and 3 has been written at points (1,1), (2,0), and (3, 1) respectively and this pattern has continued.
You are to write a program that reads the coordinates of a point (x, y), and writes the number (if any) that has been written at that point. (x, y) coordinates in the input are in the range 0...5000.
[align=left]Input[/align]
The first line of the input is N, the number of test cases for this problem. In each of the N following lines, there is x, and y representing the coordinates (x, y) of a point.
[align=left]Output[/align]
For each point in the input, write the number written at that point or write No Number if there is none.
[align=left]Sample Input[/align]
3
4 2
6 6
3 4
[align=left]Sample Output[/align]
6
12
No Number
——————————————————————————————————————————————————————————
主要是找规律。当x==y时 当x是偶数时,为x*2,如果是奇数时,为2*n-1,其他的数的话如果y < x,则为y==x时的数减去2就行了
/*********************** * 程序名:Number Steps.c * 功能:ACM ************************/ #include <stdio.h> int main() { int N, x, y; scanf("%d", &N); while(N--) { scanf("%d %d", &x, &y); if(x == y || x - y == 2) { if(x == y) { if(x % 2 == 0) { printf("%d\n", x*2); } else { printf("%d\n", x*2-1); } } else { if(x % 2 == 0) { printf("%d\n", x*2-2); } else { printf("%d\n", x*2-3); } } } else { printf("No Number\n"); } } return 0; }
相关文章推荐
- 杭电OJ题 1181 变形课 解题报告
- 悼念512汶川大地震遇难同胞——老人是真饿了(杭电OJ2187)解题报告
- 杭电OJ题 1002 A + B Problem II 解题报告
- Max Sum(杭电OJ1003)解题报告
- 杭电OJ题 1347 Grandpa is Famous解题报告
- 杭电OJ题 1444 Maya Calendar解题报告
- 杭电OJ题 1047 Integer Inquiry 解题报告
- 杭电OJ题 1361 Parencodings解题报告
- 杭电OJ题 1491 Octorber 21st 解题报告
- 杭电OJ题 1544 Palindromes解题报告
- 杭电OJ题 1715 大菲波数 解题报告
- 杭电OJ题 1379 DNA Sorting解题报告
- 杭电OJ题 1555 How many days?解题报告
- 杭电OJ题 1557 权利指数 解题报告
- 杭电OJ题 1753 大明A+B 解题报告
- 杭电OJ题 1390 Binary Numbers解题报告
- 杭电OJ题 1562 Guess the number解题报告
- 杭电OJ题 1577 WisKey的眼神 解题报告
- 杭电OJ题 1393 Weird Clock解题报告
- 杭电OJ题 Goldbach's Conjecture解题报告