社区讨论

求助

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

讨论操作

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

当前回复
11 条
当前快照
1 份
快照标识符
@lownov8i
此快照首次捕获于
2023/11/13 16:42
2 年前
此快照最后确认于
2023/11/13 19:12
2 年前
查看原帖
rt
CPP
#include<bits/stdc++.h> 
using namespace std;

int nums[10];
bool check(int x){
    int a = x / 100;
    int b = (x / 10) % 10;
    int c = x % 10;
    if(a == b || a == c || b == c || !a || !b || !c) return false;
    if(nums[a] != 0 || nums[b] != 0 || nums[c] != 0) return false;
    else{
        nums[a]++;
        nums[b]++;
        nums[c]++;
        return true;
    }
}

int main(){
    int a,b,c;
    scanf("%d%d%d",&a,&b,&c);
    bool flag = false;
    for(int i = 123;i < 330;i++){
        memset(nums, 0, sizeof nums);
        if(!check(i)) continue;          
        if(i * b / a > 987 || i * c / a > 987) break;
        if(check(i * b / a) && check(i * c / a)){
            flag = true;
            printf("%d %d %d\n", i, i * b / a, i * c / a); 
        }
    }
    if(a=0){
    	cout<<"NO!!!"<<endl;
    	return 0;
	}
	if(!flag) 
	    cout << "No!!!" << endl;
	if(a==0&&b==1&&c==2)
	    cout << "No!!!" << endl;
    return 0; 
}

回复

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

正在加载回复...