Problem, dass der Start um 10 Minuten verzögert wird.
A. We Love Golf Alle Werte von a bis b werden durchsucht, und es ist in Ordnung, wenn sie durch k teilbar sind.
ABC165a.py
a=int(input())
b,c=map(int,input().split())
for i in range(b,c+1):
if i%a==0:
print("OK")
exit()
print("NG")
B. 1% Drehen Sie die while-Anweisung, bis der Gesamtbetrag einschließlich Zinseszins x Yen überschreitet. Vergessen Sie nicht, jedes Mal mit dem Boden abzuschneiden.
ABC165b.py
import math
x=int(input())
y=100
i=0
while True:
y=math.floor(y*1.01)
i+=1
if y>=x:
print(i)
exit()
C. Many Requirements Ich habe viel Zeit verloren, als ich darüber nachdachte, ob ich die erhaltenen Punkte von oben nehmen oder die Duplikate von a und b löschen sollte. Da $ N, M und Q $ alle klein sind, reicht es aus, alle möglichen Sequenzen zu durchsuchen. Verwenden Sie Itertools-Kombinationen mit Ersetzung, um alle möglichen Sequenzen zu erstellen und die maximale Punktzahl auszugeben.
ABC165c.py
from itertools import *
n,m,q=map(int,input().split())
aaa=[]
for i in range(m):
aaa.append(i+1)
l=[]
for i in range(q):
a=list(map(int,input().split()))
l.append(a)
a=list(combinations_with_replacement(aaa,n))
ans=0
for i in a:
aa=0
for j in l:
if i[j[1]-1]-i[j[0]-1]==j[2]:
aa+=j[3]
if aa>ans:
ans=aa
print(ans)
D. Floor function
Der zweite Term ist $ 0 $, wenn $ x <B $ ist, andernfalls ist es eine positive ganze Zahl. Wenn also $ x
Wenn also $ n> = B $ ist, wird $ x = b-1 $ ausgegeben, und wenn $ n <B $, wird $ x = n $ als $ f (x) $ ausgegeben.
ABC165d.py
import math
a,b,n=map(int,input().split())
if b<=n:
print(math.floor(a*(b-1)/b))
else:
print(math.floor(a*(n)/b))
Ich habe bis zum heutigen D-Problem keine Zeit mehr ... Ich möchte das Gelernte wie DP und Suchalgorithmen so schnell wie möglich in der Praxis anwenden.
Recommended Posts