При підготовці завдань з програмування, я користуюсь наступними сайтами. Перелік книг на наступних слайдахhttps://olympkh.dots.org.ua/OLYMPKH: Система перевірки задачhttps://itknyga.com.ua/ІТ-книга – Інтерактивний підручник з інформатикиhttps://www.e-olymp.com/E-Olymphttps://dystosvita.gnomio.com/Інформатика - Дист. Освіта
Тризначне число можна представити у вигляді розрядів, наприклад423=4*100+2*10+3*1 Якщо, першу цифру позначити як а, другу як b, третю як с, тоді число матиме вигляд а*100+b*10+c*1 Для тризначного числа з трьома різними цифрами існує 6 комбінацій розміщення (3!=1*2*3=6)abc=а*100+b*10+c*1acb=а*100+c*10+b*1bac=b*100+a*10+c*1bca=b*100+c*10+a*1cab=c*100+a*10+b*1cba=c*100+b*10+a*1 S= 222(a+b+c) звідсиb=(S-222*(a+c))/2
Математична модель. Різниця забитих і пропущених м’ячів запишемо у змінні А1, В1, С1 A2=T1[0]+T2[0]-(T1[1]+T2[1])B2=T1[1]+T3[0]-(T1[0]+T3[1])C2=T2[1]+T3[1]-(T2[0]+T3[0])Переводимо результати гри в очкиif T1[0]==T1[1]: T1[0],T1[1]=1,1else: max_index, min_index = T1.index(max(T1)) ,T1.index(min(T1)) T1[max_index], T1[min_index] = 3,0
Математична модель. Переводимо результати гри в очкиif T1[0]==T1[1]: T1[0],T1[1]=1,1else: max_index, min_index = T1.index(max(T1)) ,T1.index(min(T1)) T1[max_index], T1[min_index] = 3,0 У цій частині коду ми порівнюємо кількість голів і замінюємо на відповідну кількість очків і повторюємо цю частину коду змінюючи індекси турнірів
Математична модельif S[0]!=S[1]and S[0]!=S[2]and S[2]!=S[1] : max_index=S.index(max(S[0],S[1],S[2])) out.write(str(S[max_index+6])) Починаємо перевіряти перші три елементи списку, якщо вони різні між Собою обираємо максимальний з них і до індексу цього елемента додаємо 6,Таким чином ми дізнаємось, яка команда перемогла. Наприклад максимальним виявився елемент S[1] ,тоді S[1]+6=’B’S=[A1,B1,C1,A2,B2,C2,'A','B','C']
Математична модель Якщо кількість очок у двох командах рівна, то потрібно порівняти різницюзабитих і пропущених м’ячів. Для цього ми знайдемо мінімальний елемент зперших трьох і видалити його, та кожен третій елемент списку з порівнянняelse: k=S.index(min(S[0],S[1],S[2])) del S[k::k+2] l=S.index(max(S[2],S[3]))
Математична модель. У задачі ми повинні перевірити, чи є число повним квадратом і якщо так то повинні вивести, число, яке при піднесенні до другого степеня буде дорівнювати вихідним даним. Якщо, ні -ми ділимо число, доки не отримаємо повний квадрата - вихідне число,k - лічильник, який буде щоразу збільшуватись на 1, поки ми не отримаємо повний квадратn - максимальне число, на яке ми будемо ділити, воно буде не більше половини вихідного числа