В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
Деля2363
Деля2363
19.12.2022 10:28 •  Информатика

Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежат две кучи камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в одну из куч (по своему выбору) два камня или увеличить количество камней в куче в два раза. Для того чтобы делать ходы, у каждого игрока есть неограниченное количество камней.

Игра завершается в тот момент, когда суммарное количество камней в кучах становится не менее 44. Победителем считается игрок, сделавший последний ход, то есть первым получивший такую позицию, что в кучах всего будет 44 или больше камней.

В начальный момент в первой куче было 5 камней, во второй куче – S камней; 1 ≤ S ≤ 38.

При каких S: 1 а) Петя выигрывает первым ходом;

б) Ваня выигрывает первым ходом?

2. Назовите одно любое значение S, при котором Петя может выиграть своим вторым ходом.

3. Назовите значение S, при котором Ваня выигрывает своим первым или вторым ходом.​

Показать ответ
Ответ:
EnderDragon500
EnderDragon500
08.02.2022 02:08
Возможный вариант в C++
#include <iostream>
int main()
{
    using namespace std;
    int N;
    cout << "Enter N: ";
    cin >> N;
    int num;
    int max = 1;
    int i;
    for (i = 0; i < N; ++i)
    {
        cout << "Enter #" << i + 1 << " number: ";
        cin >> num;
        if ((num - 9) % 10 != 0 && num % 3 == 0)
        {
            max = num;
            break;
        }
    }
    for (int j = i + 1; j < N; ++j)
    {
        cout << "Enter #" << j + 1 << " number: ";
        cin >> num;
        if ((num - 9) % 10 != 0 && num % 3 == 0)
            if (num > max)
                max = num;
    }
    if (max != 1)
        cout << "Max number div by 3 and don't end 9: " << max << endl;
    else
        cout << "No numbers div by 3 and don't end 9" << endl;
    return 0;
}
0,0(0 оценок)
Ответ:
DeNiSNoNs
DeNiSNoNs
04.10.2020 10:24
// PascalABC.NET 3.1, сборка 1230 от 27.04.2016
begin
  var s:=ReadLines('in.txt').ToArray;
  var n:=StrToInt(s[0]);
  var a:=s[1].ToWords.Select(e->StrToInt(e)).ToArray;
  var f:=OpenWrite('out.txt');
  Writeln(f,n,' - (кол-во чисел)');
  foreach var e in a do Write(f,e,' '); Writeln(f);
  Writeln(f,'Среднее значение четных ',
    a.Where(x->x.IsEven).Average);
  Writeln(f,'Среднее значение нечетных ',
    a.Where(x->x.IsOdd).Average);
  f.Close
end.

Файлы in.txt и out.txt находятся во вложении.

Содержимое файла out.txt:
15 - (кол-во чисел)
-22 49 33 47 -10 -1 20 -18 2 21 2 -25 21 -47 -36
Среднее значение четных -8.85714285714286
Среднее значение нечетных 12.25
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота