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

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

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)

愛してる,愛してない....なので和が奇数になるようにする。奇数になるようにするためには奇数のものが奇数個必要である。なので偶奇を調べている間に奇数はリストに入れて、偶数は総和だけ保存しておく。最後に奇数の要素の個数によって解を調節して出力する。