zoukankan      html  css  js  c++  java
  • hdoj5832【模拟】

    主要还是一个10001的倍数的问题;

    队友的思路:
    01
    1个数*10001,最后四位是这个数的后四位
    比如
    521456
    10001
    521456
    521456
    9 5215081456
    从后面for过来,如果i比前面4个大,前第四位要+10,前第五位-1,
    否则直接减,最后都会变成0,如果成立的话

    比赛时的挫code…….

    #include<cstdio>
    #include<cstring>
    #include<cmath>
    #include<vector>
    #include<queue>
    #include<stack>
    #include<map>
    #include<algorithm>
    #include<string>
    using namespace std;
    const int N=10001000;
    #define ll long long
    #define mod 10000007
    int n,m;
    char s[N];
    int main()
    {
        int k = 1;
        while(~scanf("%s",s))
        {
            printf("Case #%d: ",k++);
            int len = strlen(s);
            if(s[0] == '0' && len == 1)
            {
                printf("YES
    ");
                continue;
            }
            int flag = 0;
            for(int i = len-1; i >= 4; i--)
            {
                if(s[i] != '0')
                {
                    if(s[i-4] >= s[i])
                    {
                        s[i-4] = s[i-4] - (s[i]-'0');
                        s[i] = '0';
                    }
                    else
                    {
                        s[i-4] = s[i-4]+10-(s[i]-'0');
                        s[i] = '0';
                        s[i-5]--;
                    }
                }
            }
            for(int i = 0; i < len; i++)
            {
                if(s[i] != '0')
                    flag = 1;
            }
            if(flag == 1)
                printf("NO
    ");
            else
                printf("YES
    ");
    
        }
        return 0;
    }
  • 相关阅读:
    靶机练习
    靶机练习
    靶机练习
    CTF-攻防世界-Web_php_unserialize(PHP反序列化)
    漏洞复现
    靶机练习
    靶机练习
    靶机练习
    糗事集合
    慕课前端入门-JS事件
  • 原文地址:https://www.cnblogs.com/keyboarder-zsq/p/5934875.html
Copyright © 2011-2022 走看看