はまやんはまやんはまやん

hamayanhamayan's blog

Day of the Mountain [yukicoder No.611]

https://yukicoder.me/problems/no/611

FT Robot [AtCoder Regular Contest 087 D]

https://beta.atcoder.jp/contests/arc087/tasks/arc087_b

Good Sequence [AtCoder Regular Contest 087 C]

https://beta.atcoder.jp/contests/arc087/tasks/arc087_a

Strictly Increasing Array [CSAcademy #61]

https://csacademy.com/contest/round-61/task/strictly-increasing-array/N個の配列Vがある。 この配列に対して「ある要素の数を変更する」操作ができる。 配列全体が狭義単調増加列となるような操作の最小回数は?

Paint the Fence [CSAcademy #61 C]

https://csacademy.com/contest/round-61/task/paint-the-fence/N枚の連続した壁がある。 M人の職人がいる。 i番目の職人は[L[i],R[i]]を塗る。 各i番目の職人について、その職人がもし塗らず、他の職人が全て塗った場合に塗られていない壁の数を答えよ。

Alternant Array [CSAcademy #61 B]

https://csacademy.com/contest/round-61/task/alternant-array/N個の0とN個の1から成る2N個の配列がある。 これを任意回スワップして、10101010...か01010101...にする最小スワップ回数は?

Celsius to Fahrenheit [CSAcademy #61 A]

https://csacademy.com/contest/round-61/task/celsius-to-fahrenheit/セ氏度の温度が与えられるので、カ氏度に直せ。 なお、小数点以下は切り捨てよ。

競技プログラミングにおける多倍長整数問題まとめ

多倍長整数 64ビットを越える整数を扱いたい場合はどうするか1. 他の解法を考える 答えが多倍長整数でもない限り、多倍長整数を使わない解法があったりするのでそれを考える 答えが64ビット越えるアレな問題もある(ECR34) 2. 多倍長整数に対応した言語を使う…

Remove Extra One [Codeforces Round #450 C]

http://codeforces.com/contest/900/problem/CN個の[1,N]からなる順列Pがある。 この順列から1つの数を抜いて、recordの要素の数を計算する。 recordの要素の数が最も多くなるのはどの数を抜いたときか。 複数答えがある場合は最も小さい数を答えよ。※ recor…

Position in Fraction [Codeforces Round #450 B]

http://codeforces.com/contest/900/problem/B分数a/bを割った時に小数部分に初めて数cが出てくるのは小数点以下第何位か。 もし出てこないなら-1

Find Extra One [Codeforces Round #450 A]

http://codeforces.com/contest/900/problem/AN点あり、座標も分かっている。 この点のうち1つの点を削除して、y軸の左側か右側のどちらかにだけ点が存在するように出来るか判定せよ。

CodeChef December Challenge 2017の解説と感想

この記事は解説 Advent Calendar 2017の12日目の記事です。 CodeChef December Challenge 2017 CodeChefは月1でLong Challengeという大会をやっている 期間は10日間ぐらい 10問出題され、うち1問はマラソン問題 難易度順にはなっていないが、解いた人数でソ…

Red and blue points [CodeChef December Challenge 2017 G]

https://www.codechef.com/DEC17/problems/REDBLUEN個の赤点とM個の青点がある2D平面がある。 この平面に直線を引いて、赤点と青点の2つに分けたい。 赤点と青点の一部を消さないと分けられない時、最小何個消せば分けられるか。

Chef and Universe [CodeChef December Challenge 2017 F]

https://www.codechef.com/DEC17/problems/CHEFUNI座標(0,0,0)にいる ここから以下の操作をして最小コストで座標(X,Y,Z)に移動せよ。 コストAで、x,y,z座標のどれか1つをインクリメントする コストBで、x,y,z座標のどれか2つをインクリメントする コストCで…

Chef And Easy Xor Queries [CodeChef December Challenge 2017 E]

https://www.codechef.com/DEC17/problems/CHEFEXQ長さNの配列Aがある。 以下のクエリを処理する。 クエリ1 i番目をxに更新する。 クエリ2 j≦iで[1,j]が"magical subarray"である個数を答える magical subarray : xor和がKである

Chef and Hamming Distance of arrays [CodeChef December Challenge 2017 D]

https://www.codechef.com/DEC17/problems/CHEFHAMN個の配列Aがある。 この配列は同じ数が3つ以上は現れない。 この配列を並び替えて配列Bを作る。 AとBのハミング距離が最大となる配列Bの答えよ。 ハミング距離:= A[i] != B[i]となるiの個数

Total Diamonds [CodeChef December Challenge 2017 C]

https://www.codechef.com/DEC17/problems/VK18 T個の以下のクエリに答える。 N*Nの部屋がある。 x座標もy座標も1-indexedとすると、部屋番号はx座標とy座標の和となる。 部屋にはダイアがあり、その数は部屋番号を位毎に別々の数と考え、abs(偶数の数の総和…

Penalty Shoot-out [CodeChef December Challenge 2017 B]

https://www.codechef.com/DEC17/problems/CPLAY AチームとBチームがPK戦をする。 以下のルールで進めていく AとBが交互にPKをする AがPKをして、BがPKをするのを1セットとする 最初の5セット 普通にPKをする 5セットを終えて、勝利数が多いほうが勝ちとなる…

Chef And his Cake [CodeChef December Challenge 2017 A]

https://www.codechef.com/DEC17/problems/GIT01 RとGからなる横M,縦Nの盤面が与えられる。 RをGにする時はコスト5かかり、GをRにするにはコスト3かかる。 RとGの市松模様にするための最小コストは?

Midpoint Erase [yukicoder No.601]

https://yukicoder.me/problems/no/601

Not so Diverse [AtCoder Regular Contest 086 C]

https://beta.atcoder.jp/contests/arc086/tasks/arc086_a

Noelちゃんと星々 [yukicoder No.609]

https://yukicoder.me/problems/no/609

すぬけそだて――ごはん―― [COLOCON -Colopl programming contest 2018- C]

https://colopl2018-qual.contest.atcoder.jp/tasks/colopl2018_qual_c

すぬけそだて――チュートリアル―― [COLOCON -Colopl programming contest 2018- B]

https://colopl2018-qual.contest.atcoder.jp/tasks/colopl2018_qual_b

すぬけそだて――登録―― [COLOCON -Colopl programming contest 2018- A]

https://colopl2018-qual.contest.atcoder.jp/tasks/colopl2018_qual_a

セグメントツリーにセグメントツリーを乗せる手法(2Dセグメントツリー)

この記事はCompetitive Programming Advent Calendar 2017の9日目の記事です。 セグメントツリーにセグメントツリーを乗せる?と何が出来るのか 端的に言うと2Dセグメントツリーが構成できる 一部の2Dセグメントツリーをよりメモリ効率良く作れるというだけ …

開通777年記念 [yukicoder No.607]

https://yukicoder.me/problems/no/607

Card Groups [CSAcademy #60 D]

https://csacademy.com/contest/round-60/task/card-groups/N枚のカードがある。 i番目のカードは赤面にA[i], 青面にB[i]が書かれている。 N枚のカードをそれぞれ赤・青にした時に、赤の数の合計と青の数の合計を同じにしたい。 もし幾つか、組合せがある場…

Digit Permutation [CSAcademy #60 C]

https://csacademy.com/contest/round-60/task/digit-permutation/N個の数がある。 それぞれK進数でM桁である。 ここで0~(K-1)の順列pを用意する。 全ての数の全ての桁の数を順列pによって置換して、以下の条件をみたすようにせよ。 0から始まる数ではない …

Two Elevators [CSAcademy #60 B]

https://csacademy.com/contest/round-60/task/two-elevators/N階建ての建物に2つのエレベーターがある。 i番目のエレベーターは最初E[i]階にいる。 各エレベーターは1階に下ろすかN階まで上げるかの2択を選択できる。 N人がエレベーターを待っている。 i番…