using System;
using System.Linq;
public class HelloWorld
{
static void Main()
{
// 目标:找到最大的8位数,数字各不相同,且能被36整除
// 能被36整除的条件:能被4和9整除
// 被9整除的条件:数字之和能被9整除
// 被4整除的条件:最后两位数能被4整除
// 从最大的可能数开始向下搜索
for (long num = 98765432; num >= 10234567; num--)
{
if (IsDigitsUnique(num) && num % 36 == 0)
{
Console.WriteLine($"满足条件的最大八位数是: {num}");
return;
}
}
Console.WriteLine("未找到满足条件的八位数。");
}
// 检查数字的各位是否唯一
static bool IsDigitsUnique(long num)
{
char[] digits = num.ToString().ToCharArray();
return digits.Distinct().Count() == digits.Length;
}
}