Ебашьте с ноги. Я высрал говнокод.
{
static int findCount (char[] arr, char val)
{
int res = 0;
foreach (char t in arr)
{
if (t==val)
res++;
}
return res;
}
static void Main()
{
char[] digits = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9'};
int k = 0;
for (int my_num = 100000; my_num<999999; my_num++)
{
char[] num_converted = my_num.ToString().ToCharArray();
if (num_converted[1]!='2' || num_converted[5]!='1') {continue;} // 2 и 6 цифры
if (findCount(num_converted, '9') != 1) {continue;} //Какая-нибудь из цифр равна 9
bool isDifferent = true; //Число состоит из разных цифр
foreach (char dig in digits)
{
if (findCount(num_converted, dig) > 1) {isDifferent = false;}
}
if (isDifferent == false) {continue;}
int summ = 0; //Сумма цифр равна 29
foreach (char dig in num_converted)
{
summ+=(int)(dig - '0');
}
if (summ != 29) {continue;}
int evenCounts = 1; //Все чётные цифры идут по порядку
for (int i = 1; i<num_converted.Length; i++ )
{
if (num_converted[i]%2 == 0 && num_converted[i-1]%2 != 0) {evenCounts--;}
}
if (evenCounts!=0) {continue;}
//Разбиение на 2 числа и проверка их
int tempFirst = (int)(num_converted[0] - '0')*100 + (int)(num_converted[1] - '0')*10 + (int)(num_converted[2] - '0');
int tempSecond = (int)(num_converted[3] - '0')*100 + (int)(num_converted[4] - '0')*10 + (int)(num_converted[5] - '0');
if (tempFirst%4 !=0) {continue;}
if ((tempFirst+tempSecond)%5 ==0) {continue;}
//Проверка суммы каких-то соседей
int tempPairs = 0;
for (int i = 1; i<num_converted.Length; i++ )
{
if ( (int)(num_converted[i-1] - '0') + (int)(num_converted[i] - '0') == 7) {tempPairs++;}
}
if (tempPairs!=1) {continue;}
Console.WriteLine(my_num);
k++;
}
Console.WriteLine(k);
}
}
Если б не работало, я б не написал этот коммент.
https://www.onlinegdb.com/online_csharp_compiler
Заменить тело класса 'Helloworld" на то, что внутри цитаты. Можно ещё восстановить табуляцию, которую съела пекаба, но это не критично. Всё же, не на Питоне код написан.
Я многие языки применяю, когда надо. По работе надо было проверить одно устройство, подключающееся через i2c-шину. Малинка, одна команда в терминале, 5 строчек на Python, всё проверилось, всё работает.
Да, код бы получился компактнее. Но Питон я помню ещё хуже, чем c#, и потратил бы больше времени на вспоминание базы.
Слабак и старовер :)
Вот ответ чат GPT и похер что не правильно ИИ не ошибается и заменит программистов :)))
:
Используя условия задачи, можно постепенно сужать диапазон возможных значений для каждой цифры кода. Начнём с первой цифры:
Из условия 2 следует, что первая цифра должна быть нечётной, чтобы чётные цифры могли идти подряд. Кроме того, чтобы сумма всех цифр была 29, а в коде было 3 нечётных цифры, первая цифра должна быть 5 или 7.
Из условия 3 следует, что первое трёхзначное число, состоящее из первых трёх цифр кода, должно быть чётным и делиться на 4. Это означает, что первая цифра должна быть 5 (так как 7 не делится на 4).
Теперь перейдём ко второй цифре:
Из условия 1 следует, что вторая цифра равна 2.
Третья цифра должна быть 9, поэтому из условия 4 следует, что четвёртая цифра должна быть 8 (иначе не сумма двух соседних цифр не превысит 7).
Пятая цифра не может быть 7, так как иначе сумма всех цифр будет больше 29. Но пятая цифра не может быть 3 или 5, так как тогда сумма двух соседних цифр будет меньше 7. Таким образом, пятая цифра должна быть 1 или 6.
Если пятая цифра равна 1, то шестая цифра должна быть 4 (чтобы сумма всех цифр была 29). Но тогда второе трёхзначное число, состоящее из последних трёх цифр кода, будет равно 918, что не делится на 4. Значит, пятая цифра не может быть 1.
Значит, пятая цифра равна 6, и шестая цифра должна быть 3 (чтобы сумма всех цифр была 29). В этом случае второе трёхзначное число, состоящее из последних трёх цифр кода, равно 183, что делится на 4.
Таким образом, шестизначный код для открытия сейфа на Даче Сталина - 528613
Не так. https://i.redd.it/wconybh1cqna1.png
ИИ может ошибаться. Но он учится. Очень быстро. В отличие от тебя, бесполезный мешок с говном костями.
Я в итоге психанул и попросил его написать скрипт на Python. Очень даже неплохо у него вышло: https://twitter.com/dimaip/status/1649164628801507328
У ChatGPT более изящный код получилось написать) https://twitter.com/dimaip/status/1649164628801507328


Школьный уголок
2.3K постов4K подписчиков
Правила сообщества
Можно:
Писать всё, что можно отнести к школе.
...
Нельзя:
Нарушать правила Пикабу.