zoukankan      html  css  js  c++  java
  • HDU2137:circumgyrate the string

    Problem Description
      Give you a string, just circumgyrate. The number N means you just   circumgyrate the string N times, and each time you circumgyrate the string for 45 degree anticlockwise.
     
    Input
      In each case there is string and a integer N. And the length of the string is always odd, so the center of the string will not be changed, and the string is always horizontal at the beginning. The length of the string will not exceed 80, so we can see the complete result on the screen.
     
    Output
      For each case, print the circumgrated string.
     
    Sample Input
    asdfass 7
     
    Sample Output
    a s d f a s s
     


     

    水题

    就是把一个字符串转来转去

    #include <stdio.h>
    #include <string.h>
    
    int main()
    {
        char str[100];
        int len,i,n,j;
        while(~scanf("%s%d",str,&n))
        {
            if(n>=8)
            {
                n = n%8;
            }
            else if(n<0)
            {
                n = n%8;
                n = n+8;
                n = n%8;
            }
            len = strlen(str);
            if(n == 0)
                puts(str);
            else if(n == 1)
            {
                for(i = len-1; i>=0; i--)
                {
                    for(j = 0; j<len; j++)
                    {
                        if(j == i)
                        {
                            printf("%c\n",str[j]);
                            break;
                        }
                        else
                            printf(" ");
                    }
                }
            }
            else if(n == 2)
            {
                for(i = len-1; i>=0; i--)
                {
                    for(j = 0; j<=len/2; j++)
                    {
                        if(j == len/2)
                        {
                            printf("%c\n",str[i]);
                            break;
                        }
                        else
                            printf(" ");
                    }
                }
            }
            else if(n == 3)
            {
                for(i = 0; i<len; i++)
                {
                    for(j = 0; j<len; j++)
                    {
                        if(j == i)
                        {
                            printf("%c\n",str[len-1-i]);
                            break;
                        }
                        else
                            printf(" ");
                    }
                }
            }
            else if(n == 4)
            {
                for(i = len-1; i>=0; i--)
                {
                    putchar(str[i]);
                }
                printf("\n");
            }
            else if(n == 5)
            {
                for(i = 0; i<len; i++)
                {
                    for(j = len-1; j>=0; j--)
                    {
                        if(j == i)
                        {
                            printf("%c\n",str[i]);
                            break;
                        }
                        else
                            printf(" ");
                    }
                }
            }
            else if(n == 6)
            {
                for(i = 0; i<len; i++)
                {
                    for(j = 0; j<=len/2; j++)
                    {
                        if(j == len/2)
                        {
                            printf("%c\n",str[i]);
                            break;
                        }
                        else
                            printf(" ");
                    }
                }
            }
             else if(n == 7)
            {
                for(i = 0; i<len; i++)
                {
                    for(j = 0; j<len; j++)
                    {
                        if(j == i)
                        {
                            printf("%c\n",str[i]);
                            break;
                        }
                        else
                            printf(" ");
                    }
                }
            }
        }
        return 0;
    }
    


     

  • 相关阅读:
    与非
    抄卡组
    数据结构》关于差分约束的两三事(BZOJ2330)
    刷题向》图论》BZOJ1179 关于tarjan和SPFA的15秒(normal)
    图论算法》关于tarjan算法两三事
    图论算法》关于SPFA和Dijkstra算法的两三事
    刷题向》DP》值得一做》关于对DP问题的充分考虑(normal)
    数据结构》关于线段树两三事(新手向)(工具向)
    图论算法》关于匈牙利算法的两三事
    关于羊和车的问题
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3014187.html
Copyright © 2011-2022 走看看