読者です 読者をやめる 読者になる 読者になる

君はまるで砂漠に咲く、一輪の花。

僕はその花に引き寄せられる蝶。

Codeforces Round #326 (Div.2)

はい。
http://codeforces.com/contest/588

A. Duff and Meat

ざっくりと大意

・i日目に\(a_i\)キロの肉を食べる必要があり、スーパーではi日目に1キロ\(p_i\)で売っている。
・事前に未来の食べる量、肉の価格を知っており、買い置きに制限がない場合の最安の消費金額はいくらか??

方針のようなもの

・先頭から計算する。

python

n=int(raw_input())
ans,chk=0,1000
for i in range(n):
    a,p=map(int,raw_input().split())
    chk=min(chk,p)
    ans+=a*chk
print ans

初日だけはどうしても初日の金額で初日の量を買う必要がある。それ以降は最安値をメモしておき最安値でその日の食べる量を買う。

B. Duff in Love

ざっくりと大意

・aがa > 1でa2がxで割り切れるとxはラブリーである。
・nの約数の中からそのような数で最大のものはいくつか??

方針のようなもの

・さっぱりわからんので解説へ。

python

n=int(raw_input())
t=2
ans=1

while t*t<=n:
    if n%t==0:
        ans*=t
        while n%t==0:
            n/=t
    t+=1
if n>1:
    ans*=n
print ans

nの約数であり素数のものを列挙する。解がaならば、1 <= i <= kであり、ある素数の2乗の数では割り切れない。