Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежат две кучи камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может а) добавить в одну из куч(по своему выбору) один камень или б) увеличить количество камней в куче в два раза. Победителем считается игрок, сделавший последний ход, т.е. первым получивший такую позицию, что в обеих кучах всего будет 70 камней или больше. Задание 1: Для каждой из начальных позиций (9, 29), (11, 28) укажите, кто из игроков имеет выигрышную стратегию. Задание 2: для каждой из начальных позиций (10, 28), (12, 27) укажите, кто из игроков имеет выигрышную стратегию. Задание 3: Для начальной позиции (10, 27) укажите, кто из игроков имеет выигрышную стратегию. Постройте дерево всех партий, возможных при указанной выигрышной стратегии ОЧЕНЬ НАДО!
begin
// общая часть
var a:=ReadArrInteger('Массив:',ReadInteger('n='));
var b:=ReadInteger('b=');
// часть для задачи 1
var i:=a.IndexOf(b);
if i<0 then Writeln('Нет совпадений')
else WritelnFormat('1. A[{0}]={1}',i+1,a[i]);
// часть для задачи 2
Writeln('2. k=',a.Where(x->x=b).Count);
// часть для задачи 3
var s:=a.Select((x,i)->x=a[i+1:a.Length].Sum).ToArray;
var k:=s.IndexOf(True);
if k>=0 then WritelnFormat('3. A[{0}]={1}',k+1,a[k])
else Writeln('3. Не существует')
end.
Тестовое решение:
n= 10
Массив: -9 21 0 -9 21 6 -2 14 18 -15
b= -9
1. A[1]=-9
2. k=2
3. A[5]=21
Обычно чтоб указать на автора ставят значек копирайта (с), © и имя автора или компании
А вот доказать, что авторские права принадлежат именно вам, а не дяде из Саратова гораздо сложнее. Простым подтверждения является публикация исходного кода в открытых источниках с четким обозначением времени и даты публикации. Но делать это глупо, если вы собираетесь продавать свой продукт.