ijpc2015 2-a ioiウエハース

Post on 14-Apr-2017

450 Views

Category:

Presentations & Public Speaking

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

IJPC2015-2-A IOIウエハース@sortreew

問題概要 ウエハースをらせん上に積む

問題概要 ウエハースをらせん上に積む 完全に重なることなく積めるウエハースの数は?

考察 う~~~ん・・・・

∠ACD

A

D

B

C

考察 うん?

∠ACD(

∠ACD(∠ACD(

A

D

B

C

考察 うん?

∠ACD(

∠ACD(∠ACD(

∠ACD(∠ACD(

∠ACD(∠ACD(

A

D

B

C

考察 ∠ACD*2+ ∠ACD*2+ ∠ACD*2+…が 180の倍数になると、その次のウエハースは最初のウエハースと重なってしまう。何回足せば 180の倍数になるか?

解法 実際にシミュレーションする180の倍数になったら終了してウエハースを置いた回数を出力する 最小公倍数∠ACDを xとした時、lcm(180,2x)で最初に角度が 180の倍数になる場合がわかるので、それを 2xで割ってやればその角度までに置くウエハースの回数がわかる。よって lcm(180,2x)/2xを出力すればよい式変形して lcm(90,x)/xや gcdで書いた形でも可

注意 例外として、 45度のときは正方形なので 1つしか置けない また、無限における場合は角度が有理数の場合存在しない(無理数の場合のみ)

top related