rupc2017:bの解説

6
B. GPAじゃんけん 原案・解説 beet (@beet_aizu)

Upload: takumi-yamashita

Post on 05-Apr-2017

10 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: RUPC2017:Bの解説

B. GPAじゃんけん原案・解説 beet (@beet_aizu)

Page 2: RUPC2017:Bの解説

問題概要

N人ぶんのGPAが与えられる。

N人で総当たり戦をする。(じゃんけんをして、GPAが高い方が勝ち)

勝ち:3点、負け:0点、引き分け:1点とした時に、それぞれの勝ち点を求める。

Page 3: RUPC2017:Bの解説

自明回(TLE)N*(N-1)/2回分の試合をシミュレーションする

-> O(N^2)

N<=10^5なのでTLE

Page 4: RUPC2017:Bの解説

想定解

ソートすれば自分よりGPAが高い人、同じ人、低い人の人数がわかる

->やるだけ

桁数が指定されているのでC++のstd::stringならstd::sortで

そのまま誤差なしでソートできる。

オーダーはO(NlogN)。(バケツソートすればO(N))

Page 5: RUPC2017:Bの解説

結果

● Onsite○ First submission: jr_delay( 7min)○ First AC: jr_delay( 7min)

● Online○ First submission: jr_delay( 7min)○ First AC: jr_delay( 7min)

● Success rate (24 / 55)○ 43.64%

Page 6: RUPC2017:Bの解説

ジャッジ解

名前 行数

kawa 16

rollman 59

c7c7 19

beet 19

haji 21

someso 23

gacho 22

aoba 33

名前 行数

uku 30

kzyKT 27