• Palindromes


    Palindromes
    HihoCoder - 1878
    https://vjudge.net/problem/HihoCoder-1878/origin

    当时主要问题在于,这个数很大,不太会处理。
    我当时已经看出来它是多少就是多少,
    1234直接就可以对称过去,队友代码写的是真巧妙~

    //I 
    #include <bits/stdc++.h>
    #define inf 2333333333333333
    #define N 1000010
    #define p(a) putchar(a)
    #define For(i,a,b) for(int i=a;i<=b;++i)
    using namespace std;
    void in(int &x){
        int y=1;char c=getchar();x=0;
        while(c<'0'||c>'9'){if(c=='-')y=-1;c=getchar();}
        while(c<='9'&&c>='0'){ x=(x<<1)+(x<<3)+c-'0';c=getchar();}
        x*=y;
    }
    void o(int x){
        if(x<0){p('-');x=-x;}
        if(x>9)o(x/10);
        p(x%10+'0');
    }
    char s[N];
    char ans[N];
    int check(){
        int n=strlen(s+1);
        if(s[1]!='1') n++;
        int p=n*2-2;
        if(s[1]!='1'||(s[1]=='1'&&s[2]=='0')) p--;
        return p;
    }
    signed main()
    {
        int t;
        in(t);
        while(t--){
            scanf("%s",s+1);
            int n=strlen(s+1);
            if(n==1&&s[1]=='1'){
                p('0');p('
    ');
                continue;
            }
            int len=check();
            if(len%2==0){
                for(int i=2;i<=n;i++) p(s[i]);
                for(int i=n;i>=2;i--) p(s[i]);
                p('
    ');
            }else{
                if(s[1]=='1'){
                    s[2]='9';
                    for(int i=2;i<=n;i++) p(s[i]);
                    for(int i=n-1;i>=2;i--) p(s[i]);
                    p('
    ');
                }else{
                    s[1]--;
                    for(int i=1;i<=n;i++) p(s[i]);
                    for(int i=n-1;i>=1;i--) p(s[i]);
                    p('
    ');
                }
            }
        }
    }
  • 相关阅读:
    bzoj1066: [SCOI2007]蜥蜴
    bzoj3504: [Cqoi2014]危桥
    bzoj2756: [SCOI2012]奇怪的游戏
    bzoj1570: [JSOI2008]Blue Mary的旅行
    Ultra-QuickSort
    Bin Packing
    Watering Grass
    区间覆盖
    抄书 Copying Books UVa 714
    分馅饼 Pie
  • 原文地址:https://www.cnblogs.com/war1111/p/13720783.html
Copyright © 2020-2023  润新知