Codeforces Beta Round #55 (Div.2)
はい。
http://codeforces.com/contest/59
A. Word
implementation,strings
ざっくりと大意
・小文字か大文字を多い方に合わせて書き換え。同数なら小文字で。
Python2
s=raw_input() l=0 ans1='' ans2='' for i in s: if i.islower(): l+=1 ans1+=i.lower() ans2+=i.upper() if l*2>=len(s): print ans1 else: print ans2
大文字小文字の多さをチェックしながら大文字だけと小文字だけを作って必要な方を出力。
B. Fortune Telling
implementation,number theory
ざっくりと大意
・花びらをむしって、愛してる・愛してないって占いをする。
・n本あるa列の花を花束にして愛してる結果になる最大数。
Python2
n=input() l=map(int,raw_input().split()) o,e=[],0 for i in l: if i%2: o.append(i) else: e+=i o.sort() if len(o)==0: print 0 elif len(o)%2: print e+sum(o) else: o.pop(0) print e+sum(o)
愛してる,愛してない....なので和が奇数になるようにする。奇数になるようにするためには奇数のものが奇数個必要である。なので偶奇を調べている間に奇数はリストに入れて、偶数は総和だけ保存しておく。最後に奇数の要素の個数によって解を調節して出力する。