洛谷P1008三连击题解--zhengjun

题目背景

本题为提交答案题,您可以写程序或手算在本机上算出答案后,直接提交答案文本,也可提交答案生成程序。

题目描述

1 , 2 , , 9 1,2, \cdots ,9 9 9 个数分成 3 3 组,分别组成 3 3 个三位数,且使这 3 3 个三位数构成 1 : 2 : 3 1:2:3 的比例,试求出所有满足条件的 3 3 个三位数。

输入格式

木有输入

输出格式

若干行,每行 3 3 个数字。按照每行第 1 1 个数字升序排列。

输入输出样例

输入 #1 复制
输出 #1 复制
192 384 576
* * *
...

* * *
(输出被和谐了)

思路

直接枚举第一个数,从 100 100 333 333 ,然后判断即可

不多说了,代码

#include<bits/stdc++.h>
using namespace std;
int main()
{
	for(int i=100;i<=333;i++)
	{
		bool w[10]={false};
		int a=i,b=i*2,c=i*3;
		w[a%10]=true;
		w[a/10%10]=true;
		w[a/100]=true;
		w[b%10]=true;
		w[b/10%10]=true;
		w[b/100]=true;
		w[c%10]=true;
		w[c/10%10]=true;
		w[c/100]=true;
		bool s=true;
		for(int i=1;i<=9;i++)
			if(w[i]!=true)
			{
				s=false;
				break;
			}
		if(s==true)printf("%d %d %d\n",a,b,c);
	}
	return 0;
}

谢谢–zhengjun

发布了48 篇原创文章 · 获赞 49 · 访问量 2162

猜你喜欢

转载自blog.csdn.net/A_zjzj/article/details/104267601