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

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

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

     

    输入

    第一行输入一个整数T,表示数据组数(1<T<10000);
    第二行输入一个正整数n(1000<=n<=9999)和一个正整数k(1<=k<=100),表示操作次数;

    输出

    对于每组数据,输出对于开始的数据n在第k次“排序相减”后结果绝对值。

    输入样例

    2
    1234 2
    3562 1

    输出样例

    8352
    4176

    模拟
    代码:
    #include <iostream>
    #include <cstdlib>
    #include <cstdio>
    #include <algorithm>
    
    using namespace std;
    int t,n,k;
    int deal(int d) {
        int dd = d;
        int a[4];
        for(int i = 0;i < 4;i ++) {
            a[i] = d % 10;
            d /= 10;
        }
        sort(a,a + 4);
        int num = 0;
        for(int i = 0;i < 4;i ++) {
            num = num * 10 + a[3 - i] - a[i];
        }
        if(num == dd) k = 0;
        return num;
    }
    int main() {
        scanf("%d",&t);
        while(t --) {
            scanf("%d %d",&n,&k);
            while(k --) n = deal(n);
            printf("%d
    ",n);
        }
    }
  • 相关阅读:
    网络传输协议 UDP & TCP 详解
    OSI 七层协议
    (01day)python接口测试
    Python2和Python3的区别,以及为什么选Python3的原因
    JAVA反编译工具
    JAR反编译工具
    webdriver19-witchto方法
    webdriver实例14-Xpath定位的几种方法
    webdirver实例1--查找元素
    Qt插件开发
  • 原文地址:https://www.cnblogs.com/8023spz/p/10817870.html
Copyright © 2011-2022 走看看