 Если сможете обьяснить, то буду очень вам благодарен.
Если сможете обьяснить, то буду очень вам благодарен.
	Домашние задания: Информатика
	
		
		
								
				
																				
							
			
	
		
			Задача по информатике.
Я учусь Гос.классе с углублением в общество. Учитель информатики, мягко говоря полный идиот. Дает задачи, в которых я вообще ничего не могу понять. У него есть разбор этих тем в файле, но там ничего не понятно, сам темы не хочет объяснять, говоря есть одноклассники. Ну в общем может кто мне помочь решить задачу. Я, ну прям вообще не могу ее решить. Никак не получается.  Если сможете обьяснить, то буду очень вам благодарен.
Если сможете обьяснить, то буду очень вам благодарен.
	
	
	 Если сможете обьяснить, то буду очень вам благодарен.
Если сможете обьяснить, то буду очень вам благодарен.Каждые 9 пятёрок (за 3 итерации) меняются на 55, а 3 пятёрки, не входящие в девятку, меняются на одну восьмёрку.
Поэтому строка из L = 300 + k (k >= 0) пятёрок будет каждые 3 итерации укорачиваться на 7 пятёрок, пока в ней не останется менее 9 пятёрок, а их количество в этом остатке будет равно:
Поэтому надо рассмотреть семь случаев: 300, 301, 302, 303, 304, 305 и 306 (для k ∈ [0; 6], соответственно), и выяснить, где r mod 3 > r div 3.
Выпишем в табличку кол-во пятёрок и восьмёрок в финальной строке для каждого k:
Можно было найти это и полностью аналитически: r не может быть менее 2-х, значит, пятёрок останется две (третья если есть, то попадёт в замену, а одна пятёрка может остаться только с восьмёркой, что не подходит).
Подходящие строки: 855, 55, для r = 5 или 2, при k = 6 или 3, и L = 306 или 303, соответственно.
А вот питоновский быдлокод для проверки рассуждений:
				
									Поэтому строка из L = 300 + k (k >= 0) пятёрок будет каждые 3 итерации укорачиваться на 7 пятёрок, пока в ней не останется менее 9 пятёрок, а их количество в этом остатке будет равно:
 r = (300 + k + 5) mod 7 + 2  ∈  [2; 8] Из остатка 1 или 2 группы по 3 пятёрки могут превратиться в восьмёрки. Останется: r mod 3    пятёрок
r div 3    восьмёрок Поэтому надо рассмотреть семь случаев: 300, 301, 302, 303, 304, 305 и 306 (для k ∈ [0; 6], соответственно), и выяснить, где r mod 3 > r div 3.
Выпишем в табличку кол-во пятёрок и восьмёрок в финальной строке для каждого k:
 k   r  строка  c(5)  c(8)  подходит?
0   6   88      0     2      нет
1   7   885     1     2      нет
2   8   8855    2     2      нет
3   2   55      2     0      да Остальные три случая можно не рассматривать, так как мы нашли минималку. L = 303 Впрочем, если их перебрать, то увидим, что под условие, кроме 303, подойдёт только 306. И, соответственно, 310, 313, 317, 320, 324, 327...Можно было найти это и полностью аналитически: r не может быть менее 2-х, значит, пятёрок останется две (третья если есть, то попадёт в замену, а одна пятёрка может остаться только с восьмёркой, что не подходит).
Подходящие строки: 855, 55, для r = 5 или 2, при k = 6 или 3, и L = 306 или 303, соответственно.
А вот питоновский быдлокод для проверки рассуждений:
 s = "5" * (int(input("Длина: 300 + ")) + 300)
while "555" in s or "888" in s:
    s = s.replace("555", "8", 1).replace("888", "55", 1)
c5, c8 = s.count("5"), s.count("8")
print(s, c5, c8, ("" if c5 > c8 else "не ") + "подходит") Он запрашивает длину исходной строки (превышение над 300) и запускает быдлоцикл, выполняющий быдлозамены, и в конце выводит, подходит изначальная длина строки под условие или нет. Можно добавить в тело цикла быд... в общем, отладочную печать print(s), чтобы посмотреть, как меняется строка при каждом проходе. Запустить можно на onlinegdb.
								
									Иван Алмазов								
								Спасибо огромное, очень выручил.							
											Похожие вопросы
- Помогите решать задачу по Информатике 10класс
- Помогите, пожалуйста, решить задачу по информатике.
- Помогите решить задачу по информатике . Задача внутри
- как сделать с циклом следущуюю задачу по информатике на языке паскаль.
- Задача по информатике, 8 класс, решить в PascalABC
- Лёгкая задача по информатике со сложной формулировкой.
- Задача по информатике
- Помогите пожалуйста решить задачи по информатике
- Задача по информатике
- Помогите решить задачи по информатике плиз
