20真题
作者:
Ksiiiii
,
2024-11-23 20:27:24
,
所有人可见
,
阅读 2
数字排列
//这道题比较简单,直接暴力循环四次按条件判断就行了
#include <iostream>
using namespace std;
int main(){
for(int a = 0;a <= 9;a ++){
for(int b = 0;b <= 9;b ++){
for(int c = 0;c <= 9;c ++){
for(int d = 0;d <= 9;d ++){
int i = a *1000 + b *100 + c*10 + d;
int j = c *1000 + a *100 + d*10 + b;
if(i + j == 7856) cout << a << b << c << d << endl;
}
}
}
}
return 0;
}
反序数
//这道题也比较简单,主要需要实现一个reserse函数实现数字翻转
#include <iostream>
using namespace std;
int reverse(int n){
int num = 0;
while(n / 10){ // 此处while条件可以修改为n>0
int i = n % 10;
num = num*10 + i;
n /= 10;
}
return num*10 + n;
}
int main(){
int n;
cin >> n;
for(int i = 0;i < n;i ++){
int a,b;
cin >> a >> b;
if(reverse(a) + reverse(b) == reverse(a+b)) cout << a << " " << b << endl;
else cout << "none" << endl;
}
return 0;
}
公司发礼物
//这是一道完全背包问题