zoukankan      html  css  js  c++  java
  • UPC-6020 机智的AmyZhi(暴力)

    题目描述
    那年一个雨季,AmyZhi在校门外弯身买参考书。
    这时SiriusRen走过来,一言不合甩给她一道(自认为)很难的题
    给你一个数字N,求一个最小的正整数M,这个数字M的各个位的数字加上它本身之和恰好为N。
    没有想到AmyZhi秒解了这道题 并把N扩大到了10^18 甩回给了SiriusRen
    SiriusRen苦苦思索,发现并不会这道题
    可怜SiriusRen一世英名,在AmyZhi面前却宛如智障少年
    SiriusRen抬头透过倾斜的雨丝,看向模糊的世界,车水马龙,穿流不息,人来人往,形色匆匆,刹那间惘然,竟不知去向何方……
    输入
    第一行一个整数T,表示有T组数据。
    接下来T行每行一个整数N。
    输出
    对于每组数据,输出M。
    若无解,输出“Stupid SiriusRen”
    样例输入
    3
    216
    121
    2005
    样例输出
    198
    Stupid SiriusRen
    1979
    提示
    对于20%的数据 N<=1000,T<=1000
    对于40%的数据 N<=100000,T<=5
    对于60%的数据 N<=100000,T<=5000
    对于100%的数据 N<=1018,T<=50000

    问输入一个n,求一个最小的m使得m加上m的每一数位上的值结果等于n
    因为最多加上的值不会超过当前位数*9,因此只用暴力遍历这段距离即可
    最大的1e18也不过是18*9的遍历长度

    #include<stdio.h>
    #define LL long long
    int main()
    {
        int t;
        LL n;
        scanf("%d",&t);
        while(t--)
        {
            scanf("%lld",&n);
            LL tmp=n;
            int len=0;
            while(tmp)
            {
                tmp/=10;
                len++;
            }
            int sub=len*9;
            bool flag=false;
            for(LL i=n-sub;i<n;i++)
            {
                tmp=i;
                LL sum=0;
                while(tmp)
                {
                    sum+=tmp%10;
                    tmp/=10;
                }
    //            printf("%lld -----> %lld
    ",i,sum+i);
                if(sum+i==n)
                {
                    printf("%lld
    ",i);
                    flag=true;
                    break;
                }
            }
            if(!flag) printf("Stupid SiriusRen
    ");
        }
    }
    
  • 相关阅读:
    mysql sql语句多表合并UNION ALL和UNION
    ajax向后台传递数组参数并将后台响应的数据赋值给一个变量供其它插件使用
    java web项目中后台控制层对参数进行自定义验证 类 Pattern
    java后台实体类设置默认值
    app连接线上数据库进行本地接口测试
    idea常用快捷键
    百度搜索小脚本
    有道翻译小脚本
    洛谷 P3275 [SCOI2011]糖果
    洛谷 P2048 BZOJ 2006 [NOI2010]超级钢琴
  • 原文地址:https://www.cnblogs.com/kuronekonano/p/11135828.html
Copyright © 2011-2022 走看看