М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
89280214745B
89280214745B
28.06.2022 09:05 •  Информатика

Язык pithon
игра в числа ведётся на одномерном массиве целых положительных чисел. перед началом, жеребьёвкой определяется, кто будет ходить первым (первый игрок), а кто – вторым (второй игрок). процесс игры состоит в том, что игроки по очереди (сначала первый игрок, затем второй, следом опять первый и так далее) вычёркивают числа из массива. вычеркнуть можно только число, находящееся в конце или начале оставшегося массива. при этом всегда вычёркивается максимальное число из этих двух. если первое и последнее числа массива равны, то вычёркивается первое. игра продолжается до того момента, пока не будут вычеркнуты все числа. каждое вычеркнутое число идёт в актив тому игроку, который его вычеркнул. после окончания игры каждый игрок суммирует вычеркнутые им числа. победителем объявляется тот, кто наберет больше очков. некоторые игроки поняли, что результат не зависит от стратегии игры, и решили попросить вас написать программу для получения результата. входные данные
в первой строке находится одно целое число n – количество чисел в массиве (1 ≤ n ≤ 104). во второй строке находятся n целых положительных чисел из диапазона [1, 32000], разделённых пробелом.
выходные данные
выведите два числа, разделенные двоеточием. первое число – количество очков, набираемых первым игроком при игре на этом массиве, второе число – для второго.

👇
Открыть все ответы
Ответ:
Андртян
Андртян
28.06.2022
9 литровая бочка - 1 бочка
5 литровая бочка - 2 бочка
сначала наливаем из 1 бочки во 2 бочку. в 1 бочке остаётся 4 литра. выливаем воду из 2 бочки. наливаем оставшиеся 4 литра из 1 бочки во 2 бочку. заново наливаем в 1 бочку 9 литров. доливаем 1 литр во 2 бочку и выливаем. в 1 бочке остаётся 8 литров. наливаем во 2 бочку 5 литров и выливаем. в 1 бочке остаётся 3 литра. наливаем 3 литра во 2 бочку, а в 1 бочку наливаем 9 литров. доливаем во 2 бочку 2 литра и выливаем. в 1 бочке остаётся 7 литров воды. наливаем из 1 бочки 5 литров во 2 бочку и выливаем воду из 2 бочки. в 1 бочке остаётся 2 литра, и наливаем эти 2 литра во 2 бочку. наливаем в 1 бочку 9 литров воды и доливаем во 2 бочку 3 литра. в 1 бочке остаётся 6 литров. готово
4,8(24 оценок)
Ответ:
АсяБру
АсяБру
28.06.2022

(Написал для С++ и для С)

[1-й вариант для C++]

#include <iostream>

using namespace std;

int main(int argc, const char * argv[]) {

   int numberFirst, numberSecond;

   //Для того, чтобы в консоль корректно выводились русские буквы

   setlocale(LC_ALL, "Russian");

   

   cout << "Введите первое число: ";

   cin >> numberFirst;

   

   cout << "Введите второе число: ";

   cin >> numberSecond;

   

   // Переменная 'a' используется для хранения первой цифры из первого числа

   int a = 0;

   while (numberFirst > 0) {

       a = numberFirst % 10;

       numberFirst/=10;

   }

   

   // Переменная 'b' используется для хранения первой цифры из второго числа

   int b = 0;

   while (numberSecond > 0) {

       b = numberSecond % 10;

       numberSecond/=10;

   }

   

   if (a == b){

       cout << "У чисел одинаковые первые цифры!" << endl;

   }

   else{

       cout << "У чисел разные первые цифры!" << endl;

   }

   

   //Для того, чтобы окно с консолью не закрывалось после выполнения программы. В качестве альтернативы можно использовать system("pause");

   getchar();

}

[2-й вариант для С]

#include  <stdio.h>

int main(int argc, const char * argv[]) {

   int numberFirst, numberSecond;

   

   printf("Enter first number: ");

   scanf("%d", &numberFirst);

   

   printf("Enter second number: ");

   scanf("%d", &numberSecond);

   // Переменная 'a' используется для хранения первой цифры из первого числа

   int a = 0;

   while (numberFirst > 0) {

       a = numberFirst % 10;

       numberFirst/=10;

   }

   

   // Переменная 'b' используется для хранения первой цифры из второго числа

   int b = 0;

   while (numberSecond > 0) {

       b = numberSecond % 10;

       numberSecond/=10;

   }

   

   if (a == b){

       printf("Numbers have the same first digits!");

   }

   else{

       printf("Numbers have different first digits!");

   }

}

Объяснение:

Объяснения добавил в комментарии к коду.

4,8(52 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ