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

hamayanhamayan's blog

2018-01-01から1ヶ月間の記事一覧

Find Remainder [CSAcademy #63 C]

https://csacademy.com/contest/round-63/task/find-remainder/N要素の配列A,Bがある。 この時B[i] = A[i] % Kとなるような最小の自然数Kを求めよ。 もし、存在しないならば-1と答えよ。 ※ 問題文では「B[i] = A[i] mod K」とあるが合同式ではないので注意

Maximize Profit [CSAcademy #63 B]

https://csacademy.com/contest/round-63/task/maximize-profit/S円のお金とQ個の確率を持っている。 確率を適切に入れ替えて順番に使っていくことを考える。 i番目の確率を使う場合は2つの選択が選べる。 1. 確率を使ってお金をP[i]%上昇させる 2. 確率を捨…

Xor Match [CSAcademy #63 A]

https://csacademy.com/contest/round-63/task/xor-match/N要素の配列AとM要素の配列Bがある。 どちらも2値配列である(0か1が入っている)。 0≦j≦M-Nの中で0≦i≦Nの全てでA[i] + B[i+j]=1となっているjの個数は?

競技プログラミングにおけるSparse Table問題まとめ

Sparse Table 普通のSparse Table 結合則と冪等性が成り立つ操作ならば構築O(NlogN),クエリO(1)でできるデータ構造 結合則: 順序逆にしても結果が同じ 冪等性: 1回やっても複数回やっても結果が同じになる(maxとかはそう) セグメントツリーとは異なり更新は…

Maximum Palindromes [HourRank 25 B]

https://www.hackerrank.com/contests/hourrank-25/challenges/maximum-palindromesアルファベット小文字からなる文字列Sがある。 これについて以下のクエリに答えよ。S[L..R]の文字を上手く取って入れ替えることで回文を作る。 この回文のうち長さが最長の…

Constructing a Number [HourRank 25 A]

https://www.hackerrank.com/contests/hourrank-25/challenges/constructing-a-numberN個の数がある。 この数を(各桁単位で)バラバラにして再構築することで1つの数を作る。 上手く再構築して3の倍数に出来るか判定せよ。

2017-like Number [AtCoder Beginner Contest 084 D]

https://abc084.contest.atcoder.jp/tasks/abc084_d

Special Trains [AtCoder Beginner Contest 084 C]

https://abc084.contest.atcoder.jp/tasks/abc084_c

Postal Code [AtCoder Beginner Contest 084 B]

https://abc084.contest.atcoder.jp/tasks/abc084_b

Move on grid [yukicoder No.612]

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