社区讨论

#7 RE 80分求调

P1618三连击(升级版)参与者 2已保存回复 2

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
2 条
当前快照
1 份
快照标识符
@mhjs9898
此快照首次捕获于
2025/11/04 07:40
4 个月前
此快照最后确认于
2025/11/04 07:40
4 个月前
查看原帖
CPP
#include <bits/stdc++.h>
using namespace std;
int a, b, c;
bool s[10];
int sf = 0;
int main() {
	cin >> a >> b >> c;
	if (a == 0 || b == 0 || c == 0) {
		cout << "No!!!";
		return 0;
	}
	for (int i = 1; i <= 9; i++) {
		for (int j = 1; j <= 9; j++) {
			for (int k = 1; k <= 9; k++) {
				memset(s, 0, sizeof(s));
				int x = i * 100 + j * 10 + k;
				int ans = x / a;
				int y = ans * b;
				int z = ans * c;
				if (y > 999 || z > 999) {
					continue;
				}
				for (int o = 0; o < to_string(x).size(); o++) {
					s[to_string(x)[o] - '0'] = 1;
					s[to_string(y)[o] - '0'] = 1;
					s[to_string(z)[o] - '0'] = 1;
				}
				int f = 0;
				for (int o = 1; o <= 9; o++) {
					if (s[o] == 0) {
						f = 1;
						break;
					}
				}
				if (f == 0) {
					cout << x << " " << y << " " << z << endl;
					sf = 1;
				}
			}
		}
	}
	if (sf == 0) {
		cout << "No!!!";
	}
	return 0;
}

回复

2 条回复,欢迎继续交流。

正在加载回复...