C#. Пример работы на изображении. (Входные данные отличаются)
using System;
using System.Collections.Generic;
using System.Linq;
namespace NSymbs
{
class Program
{
static void Main(string[] args)
{
string input;
input = Console.ReadLine();
int[] param = input.Split("\t ".ToCharArray()).Select(x => int.Parse(x)).ToArray();
input = Console.ReadLine();
int z = input.Length / param[1];
List<string> bufer = new List<string>();
for (int i = 0; i < z; ++i)
bufer.Add(input.Substring(i*param[1], param[1]));
Console.WriteLine(bufer.Distinct().Count());
}
}
}
Y := X+Y ⇒ Y(новое) = X(новое)+Y(старое) ⇒ 10 = X(новое)+Y(старое)
X := Y+2 ⇒ X(новое) = Y(старое)+2 ⇒ 10 = (Y(старое)+2)+Y(старое)
Y := X-1 ⇒ Y(старое) = X(старое)-1 ⇒ 10 = (X(старое)-1+2)+X(старое)-1 ⇒ 10 = 2*X(старое) ⇒ X(старое) = 5
Проверка:
Y = X - 1 = 5-4 = 4
X = Y +2 = 4+2 = 6
Y = X + Y = 6+4 = 10
ответ: 5