zoukankan      html  css  js  c++  java
  • PAT (Advanced Level) 1069. The Black Hole of Numbers (20)

    简单题。

    #include<cstdio>
    #include<cstring>
    #include<cmath>
    #include<vector>
    #include<map>
    #include<stack>
    #include<queue>
    #include<string>
    #include<algorithm>
    using namespace std;
    
    int n;
    int a[5];
    int num1,num2;
    
    int f(int num)
    {
        memset(a,0,sizeof a);
        int tmp=num;
        int z=0;
        while(tmp) a[z++]=tmp%10,tmp=tmp/10;
        num1=0,num2=0;
        sort(a,a+4);
        for(int i=0;i<4;i++) num1=num1*10+a[i];
        for(int i=3;i>=0;i--) num2=num2*10+a[i];
        return num2-num1;
    }
    
    int main()
    {
        scanf("%d",&n);
        if(f(n)==0) printf("%04d - %04d = %04d
    ",n,n,0);
        else
        {
            while(1)
            {
                int res=f(n);
                printf("%04d - %04d = %04d
    ",num2,num1,res);
                n=res;
                if(n==6174) break;
            }
        }
        return 0;
    }
  • 相关阅读:
    A+B Problem
    迭代平方根
    猴子报数
    分数求和
    猴子吃桃
    钻石
    杨辉三角形
    MYSQL 5.7 修改密码、登录问题
    SQL 语句 explain 分析
    重构CMDB,避免运维之耻
  • 原文地址:https://www.cnblogs.com/zufezzt/p/5633415.html
Copyright © 2011-2022 走看看