zoukankan      html  css  js  c++  java
  • Codeforces834A

    A. The Useless Toy

    time limit per test:1 second
    memory limit per test:256 megabytes
    input:standard input
    output:standard output

    Walking through the streets of Marshmallow City, Slastyona have spotted some merchants selling a kind of useless toy which is very popular nowadays – caramel spinner! Wanting to join the craze, she has immediately bought the strange contraption.

    Spinners in Sweetland have the form of V-shaped pieces of caramel. Each spinner can, well, spin around an invisible magic axis. At a specific point in time, a spinner can take 4 positions shown below (each one rotated 90 degrees relative to the previous, with the fourth one followed by the first one):

    After the spinner was spun, it starts its rotation, which is described by a following algorithm: the spinner maintains its position for a second then majestically switches to the next position in clockwise or counter-clockwise order, depending on the direction the spinner was spun in.

    Slastyona managed to have spinner rotating for exactly n seconds. Being fascinated by elegance of the process, she completely forgot the direction the spinner was spun in! Lucky for her, she managed to recall the starting position, and wants to deduct the direction given the information she knows. Help her do this.

    Input

    There are two characters in the first string – the starting and the ending position of a spinner. The position is encoded with one of the following characters: v (ASCII code 118, lowercase v), < (ASCII code 60), ^ (ASCII code 94) or > (ASCII code 62) (see the picture above for reference). Characters are separated by a single space.

    In the second strings, a single number n is given (0 ≤ n ≤ 109) – the duration of the rotation.

    It is guaranteed that the ending position of a spinner is a result of a n second spin in any of the directions, assuming the given starting position.

    Output

    Output cw, if the direction is clockwise, ccw – if counter-clockwise, and undefined otherwise.

    Examples

    input

    ^ >
    1

    output

    cw

    input

    < ^
    3

    output

    ccw

    input

    ^ v
    6

    output

    undefined
     1 //2017-08-18
     2 #include <cstdio>
     3 #include <cstring>
     4 #include <iostream>
     5 #include <algorithm>
     6 
     7 using namespace std;
     8 
     9 const char cw[4] = {'^', '>', 'v', '<'};
    10 const char ccw[4] = {'^', '<', 'v', '>'};
    11 
    12 int main()
    13 {
    14     int n;
    15     char ch1, ch2;
    16     while(cin>>ch1>>ch2){
    17         cin>>n;
    18         n = n%4;
    19         bool fg1 = false, fg2 = false;
    20         for(int i = 0; i < 4; i++){
    21             if(cw[i] == ch1 && cw[(i+n)%4] == ch2){
    22                 fg1 = true;
    23             }
    24         }
    25         for(int i = 0; i < 4; i++){
    26             if(ccw[i] == ch1 && ccw[(i+n)%4] == ch2){
    27                 fg2 = true;
    28             }
    29         }
    30         if(fg1 && !fg2)
    31             cout<<"cw"<<endl;
    32         else if(!fg1 && fg2)
    33             cout<<"ccw"<<endl;
    34         else 
    35             cout<<"undefined"<<endl;
    36     }
    37 
    38     return 0;
    39 }
  • 相关阅读:
    如何写工程代码——重新认识面向对象
    java 利用同步工具类控制线程
    java简易excel导入导出工具(封装POI)
    二叉搜索树的简单介绍
    spring security 配置多个AuthenticationProvider
    spring和UEditor结合
    继承后的执行顺序
    【转】WPF中实现自定义虚拟容器(实现VirtualizingPanel)
    <译>自学WPF系列(1)
    <译>C#使用设计模式和软件设计原则构建应用程序 PartIII
  • 原文地址:https://www.cnblogs.com/Penn000/p/7392522.html
Copyright © 2011-2022 走看看