zoukankan      html  css  js  c++  java
  • 2020 排序相减

    题目来源: syu练习题
    基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题
     收藏
     关注

    “排序相减”操作是指对于任意一个四位数n,将四个数字分别进行顺序排序和逆序排序,得到两个数取相减后结果的绝对值n1,然后继续将n1中的四个数字进行顺序排序和逆序排序,得到两个数取相减后结果的绝对值n2,以此类推,最后总会得到一个数字黑洞,无法跳出。

    例如:样例2中4176 = 6532 - 2356

    Input
    第一行输入一个整数T,表示数据组数(1<T<10000);
    第二行输入一个正整数n(1000<=n<=9999)和一个正整数k(1<=k<=100),表示操作次数;
    Output
    对于每组数据,输出对于开始的数据n在第k次“排序相减”后结果绝对值。
    Input示例
    2
    1234 2
    3562 1
    Output示例
    8352
    4176
    费朝晖 (题目提供者)
    C++的运行时限为:1000 ms ,空间限制为:131072 KB 示例及语言说明请按这里

    这题数据不大,无脑写的,无优化。大佬们看不惯请见谅。

    #include<stdio.h>
    int ans[10001],cont=1;
    int n;
    int  fengli(int a)
    {
        int i=0,j,b;
        int f[5];
        while(a>0)
        {
            f[i++]=a%10;
            a/=10;
        }
        for(i=0;i<3;i++)
        {
            for(j=0;j<3-i;j++)
            {
                if(f[j]>f[j+1])
                {
                    int t=f[j];f[j]=f[j+1];f[j+1]=t;
                }
            }
        }
        a=1000*f[0]+100*f[1]+10*f[2]+f[3];
        for(i=0;i<3;i++)
        {
            for(j=0;j<3-i;j++)
            {
                if(f[j]<f[j+1])
                {
                    int t=f[j];f[j]=f[j+1];f[j+1]=t;
                }
            }
        }
        b=1000*f[0]+100*f[1]+10*f[2]+f[3];
        return a-b>0?a-b:b-a;
    }
    void paixuxiangjian(int a,int b)
    {
    
        for(int i=0;i<b;i++)
        {
            a=fengli(a);
    
        }
        ans[cont++]=a;
    }
    int main()
    {
        scanf("%d",&n);
        int co=n,a,b;
        for(int i=1;i<=n;i++)
        {
             scanf("%d%d",&a,&b);
             paixuxiangjian(a,b);
        }
    
        for(int i=1;i<=co;i++)
            printf("%d
    ",ans[i]);
        return 0;
    }



  • 相关阅读:
    linux终端发送邮件
    ubuntu交换Caps 和 ESC
    pycharm快捷键
    python catch socket timeout
    pgsql restart
    python re.sub
    文件写入与缓存
    HTTP协议再分析
    leetcode-45
    Java的锁
  • 原文地址:https://www.cnblogs.com/37kiazz73/p/10316876.html
Copyright © 2011-2022 走看看