hdu 2137 circumgyrate the string

来源:互联网 发布:webkey 源码 编辑:程序博客网 时间:2024/06/06 00:51

字符串旋转,有负数,

abcdefg    2
    g
     f
    e
    d
    c
    d
    a

 

 

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