P1008 [NOIP1998 普及组] 三连击

题目背景

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

题目描述

将 1, 2, \ldots , 91,2,,9 共 99 个数分成 33 组,分别组成 33 个三位数,且使这 33 个三位数构成 1 : 2 : 31:2:3 的比例,试求出所有满足条件的 33 个三位数

#include <iostream>
using namespace std;
int s[10];
int main()
{
	int a,b,c,d=0;
	for(int i=123;i<=329;++i)
	{
		a=i;
		b=a*2;
		c=a*3;
		while(a>0)
		{
			s[a%10]=s[a%10]+1;
			a=a/10;
		}
		while(b>0)
		{
			s[b%10]=s[b%10]+1;
			b=b/10;
		}
		while(c>0)
		{
			s[c%10]=s[c%10]+1;
			c=c/10;
		}
	    for(int j=0;j<=9;++j)
		{
			if(s[j]>1||s[0]>0)
			{
				d=1;
				break;
			}
		}
		if(d==0)
		{
			cout<<i<<" "<<i*2<<" "<<i*3<<" "<<endl;
		}
		d=0;
		for(int y=0;y<=9;++y)
		{
			s[y]=0;
		}
	} 
	return 0;
}
posted @   四面楚歌2022  阅读(36)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示