例如,2022 排在 409 前面,因为 2022 的数位之和是 6,小于 409 的数位之和 13。又如,6 排在 2022 前面,因为它们的数位之和相同,而 6 小于 2022。给定正整数 n,m,请问对 1 到 n 采用这种方法排序时,排在第 m 个的元素是多少? 输入格式 输入第一行包含一个正整数 n。第二行包含一个正整数 m。
小蓝对一个数的数位之和很感兴趣,今天他要按照数位之和给数排序。当两个数各个数位之和不同时,将数位和较小的排在前面,当数位之和相等时,将数值小的排在前面。 例如,2022 排在 409 前面,因为 2022 的数位之和是 6,小于 409 的数位之和 13。 又如,6 排在 2022 前面,因为它们的数位之和相同,而 6...
vector变长数组。 注意事项: 不要超时。 参考代码: #include <iostream> #include <vector> #include <set> #include <string> #include #include <queue> #include <stack> #include <cstdio> #include <cstring>//strlen、strcmp #include <cmath> #include <cstdlib>//malloc #include <algorithm> usin...
原题链接:蓝桥杯2022年第十三届省赛真题-数位排序 解题思路:注意事项:参考代码: n = int(input()) m = int(input()) l = [i for i in range(1,n+1)] t = [] for i in l: s = 0 j = i while i > 0: s += i % 10 i = i // 10 t.append([s,j]) t.sort(key=lambda x...
int v; long long z; }; long long shuwi(int v){ int a = v; long s1 = 0; while(a){ s1 += a%10; a /= 10; } return s1; } bool cmp(aa v1,aa v2){ if(v1.z != v2.z) return v1.z < v2.z; else return v1.v < v2.v; ...
原题链接:蓝桥杯2022年第十三届省赛真题-数位排序 #include<iostream> #include<algorithm> using namespace std; bool cmp(int x,int y){ int sum1=0,sum2=0; int a=x,b=y; while(a!=0){ sum1+=a%10; a=a/10; } while(b!=0){ sum2+=b%10; b=b/10; } if(sum1==sum2){ ...
原题链接:蓝桥杯2022年第十三届省赛真题-数位排序 解题思路:注意事项:参考代码: n = int(input()) m = int(input()) l = [i for i in range(1,n+1)] t = [] for i in l: s = 0 j = i while i > 0: s += i % 10 i = i // 10 t.append([s,j]) t.sort(key=lambda x...
原题链接:蓝桥杯2022年第十三届省赛真题-数位排序 解题思路:注意事项:参考代码: #include<bits/stdc++.h> using namespace std; int main() { int i,n,m,t,s; cin>>n>>m; int a,b[55][n+1]={0}; for(i=1;i<=n;i++) {a=i; t=0; while(a) { t+=a%10; a/=10; } b[t][...