WUST Online Judge - 2153: 旋转
2153: 旋转
Time Limit: 1 Sec Memory Limit: 128 MB 64bit IO Format: %lld
Submitted: 586 Accepted: 137
[Submit][Status][Web Board]
Description
漫步在棉花糖市的街道上,zjlord已经发现了一些商人出售一种现在非常受欢迎的玩具他想要加入这个热潮,立即买下了这个奇怪的装置。
这个装置是V形的。这个装置可以绕着一个看不见的魔法轴旋转。每一秒会显示下面的四个位置(每一个相对于前一个旋转了90度,第四个跟在第一个之后):
每个位置保持一秒,然后根据这个装置的旋转方向以顺时针或逆时针顺序切换到下一个位置。
zjlord设法让这个装置精确地旋转n秒。他被这个过程的优雅所吸引,大家都知道的,他忘记了旋转方向!幸运的是,他知道开始位置和结束位置,你能帮他推出旋转方向吗?
Input
第一个字符串中有两个字符 – 这个装置的开始和结束位置。该位置用以下字符之一编码:v(ASCII码118,小写v),<(ASCII码60),^(ASCII码94)或>(ASCII码62))。字符由一个空格分隔。
在第二个字符串中,给出单个数字n(0≤n≤1e9) - 旋转的持续时间。
Output
如果方向只能是顺时针,输出cw;如果方向只能是逆时针,输出ccw;否则,输出undefined。。
Sample Input
^ > 1 < ^ 3 ^ v 6
Sample Output
cw ccw undefined
Author
wjw
代码如下:
#include <stdio.h> int main() { long long n; char s[10]; while (gets(s) != NULL) { int i = 0; fflush(stdin); scanf("%lld", &n); n %= 4; if (s[i] == 'v' && s[i+2] == '<' || s[i] == '<' && s[i+2] == '^') { if (n == 1) printf("cw\n"); else if (n == 3) printf("ccw\n"); else printf("undefined\n"); } else if (s[i] == 'v' && s[i+2] == '^' || s[i] == 'v' && s[i+2] == 'v' || s[i] == '^' && s[i+2] == '^' || s[i] == '^' && s[i+2] == 'v') printf("undefined\n"); else if (s[i] == 'v' && s[i+2] == '>' || s[i] == '<' && s[i+2] == 'v') { if (n == 1) printf("ccw\n"); else if (n == 3) printf("cw\n"); else printf("undefined\n"); } else if (s[i] == '<' && s[i+2] == '<' || s[i] == '<' && s[i+2] == '>' || s[i] == '>' && s[i+2] == '>' || s[i] == '>' && s[i+2] == '<') printf("undefined\n"); else if (s[i] == '^' && s[i+2] == '<' || s[i] == '>' && s[i+2] == '^') { if (n == 1) printf("ccw\n"); else if (n == 3) printf("cw\n"); else printf("undefined\n"); } else if (s[i] == '^' && s[i+2] == '>' || s[i] == '>' && s[i+2] == 'v') { if (n == 1) printf("cw\n"); else if (n == 3) printf("ccw\n"); else printf("undefined\n"); } } return 0; }
作者:McR
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。