关于重复问题
查看原帖
关于重复问题
822960
CuSo4Ink楼主2022/11/1 21:51

如果k<10就会出现重复打印的情况,不知道是哪个逻辑出错了。虽然看了题解明白自己的代码很多余,但还是想在优化前找出自己的思维漏洞,如果有大佬能帮忙感激不尽。

include<stdio.h>
int main()
{
  int k = 0,up=0,mid=0,down=0,tru=0;
  scanf("%d", &k);
	for(int a = 1; a<=3; a++)
	{
		if (a == 3)
		{
			int act = 0;
			up = 300;
			mid = 0;
			down = 0;
			if (up % k || mid % k || down % k)
				break;
			act =30000;
			printf("%d\n", act);
			tru = 1;
			break;
		}
		for (int b=0;b<=9;b++)
		{
			for (int c=0;c<=9;c++)
			{
				for (int d = 0; d <= 9; d++)
				{
					for (int e = 0,act=0; e <= 9; e++)
					{
						up = a * 100 + b * 10 + c;
						mid= b * 100 + c * 10 + d;
						down= c * 100 + d * 10 + e;
						if ((up % k) ||(mid % k)||(down % k))
							continue;
							act = a * 10000 + b * 1000 + c * 100 + d * 10 + c;
							printf("%d\n", act); 
							tru = 1;
					}
				}
			}
		}
	}
	if (!tru)
		printf("No");
	return 0;
}
2022/11/1 21:51
加载中...