链接:https://ac.nowcoder.com/acm/contest/6220/A
题目描述
牛牛想知道所有的长度为n的数中,各个位上的数字之和为m的这些数的和是多少呢。给定n和m,求这些数的和。
可以看到数据范围很小,可以考虑暴力解。
class Solution { public: /** * 返回这样的数之和 * @param n int整型 数的长度 * @param m int整型 各个为之和 * @return long长整型 */ long long sum(int n, int m) { // write code here long long ans = 0; for(int i=1;i<1e7;++i) { int x=i; int tmp=0,cnt=0; // 储存每位的和,以及位数 while(x) { tmp += x%10; x/=10; cnt++; } if(cnt==n&&tmp == m) ans+=i; //符合条件 } return ans; } };