2009-01-01から1年間の記事一覧

456.1

出題者が開始前から予想されまくっていた件。多分1050は実装問題な部分を除けば1000で良かったと思う。 250 将棋の銀が目的地に移動するまでのステップ数を求めよ、という問題。 斜め方向で移動できる範囲にいれば最短距離で、そうでなければ前に一歩出てか…

455.1

惰性。 300 矩形の幅1の枠を配置することを考えるとき、最大でいくつ入れ子にできるか答えよ、という問題。 メモ付き探索すれば良さそうな感じ。幅1の枠かどうかの判定も、うまく辺をメモしておく感じ。 550 正3角形が正3角形状に並んでいる状態で、六角形は…

454.1

面倒セット? 250 整数Nが指定されるので、N^^N-1^^N-2^^...^^1を求めよ、という問題。^^は10進数での^と定義される。 実装するだけ。 500 見てない。 1000 2次元平面に順番に数字が規則的に並んでいるので、指定された数字と1とでできる矩形内部の数につい…

453.5.1

前回流れたので補講みたいなの。かなりのサービスセット。 250 迷路の初期位置と移動できる方法が与えられるので、一番遠くにゴールを設置せよ、という問題。 BFSするだけ。到達できない点があればその旨答える。実装系なので手の速さを競う。 450 見てない…

453.1

SRM

途中で落ちちゃってどうしようもないんだけれども? 250/500 どっちも開く前に落ちた。 1000 サッカーのリーグ戦の途中での勝ち点リストが与えられる。全部のチームは4試合ずつ残しているが、どの相手と戦うかは分からない。このとき、ひいきのチームは最高…

452.1

250だけでレートが上がるのは良くないと思うけれど、まぁ上がるよね...。 250 NxMの盤面に石を置く。ユークリッド距離が2になるような置き方ができないとすると、最大いくつ置けるか答えよ、という問題。 市松模様になるっぽいので、適当に計算するだけ。行…

310.1

SRM

900とは思えないくらいひどい900だった...。実装系にしてもひどい...。 900 直方体の箱がN個(15個以下)与えられるので、それらを積むことを考える。積むときには上に乗せる直方体の底面が下にくる直方体の上面からはみ出さないようにしなくてはならず、また…

310.1

SRM

PKUのやり方について検討する気分になったので、SRMの方に手を出す感じ。 250 1x1x1の立方体をK個詰むことを考える。1,4,9,16,...個ずつ積みたいが、数がちょうどにならない場合については、一回り大きいように積んで、上の方は空にする。各段については、左…

451.1

SRM

簡単な解法が浮かんだので解いてみた。そもそも難しくはないはずなんだけど。 500 縦方向に一定速度(+1)で、横方向には常に加速(直前の横向き速度+1以上)しながら進む状況で、途中にある指定された点をいくつ経由できるか答えよ、という問題。速度は常に整数…

1583

PKU

文章が入力として与えられるので、ケースを無視して一番多く出てくる文字列をソートして答えよ、という問題。 joinしてtoLowerCaseしてsplitして、HashMapに入れてカウントして、多いの取り出して、sortしておしまい。

1581

PKU

ICPCルールでどのチームが勝ったか、スコアを添えて答えよ、という問題。 やるだけ。配列長をいい加減に取っていたので落ちた。それとは別に一番解いたチームのペナルティが一番でかいと落ちるコードだった。かなりひどい...。

451.1

TLEしないつもりがTLEという結果。 250 ある整数Kが、別の整数MについてK=M+10M+100M+...となるとき、最小のMを答えよ、という問題。 要は1,11,111,...で割り切れるかどうかを調べるだけ。Div2に出せばいいと思う。 500 縦方向には一定速度、横方向には直前…

450.1

SRM

1000 1列に並んだマスに数字が書かれている。初期位置は左端。現在位置から右にある任意のマスに移動し、その区間に書かれている総和を得点とし、次に左にある任意のマスに移動し、その区間に書かれている総和を得点とする。これをKステップ繰り返し、得点を…

1580

PKU

文字列の類似度を評価する式が与えられるので、与えられた文字列に対してその値を計算せよ、という問題。 実装系。右にずらしたり左にずらしたりするところがあるのだけれど、右にずらすのだけを実装して、後は引数をスワップするのが正解。(実際どれだけ実…

1579

PKU

3引数関数の定義と引数が与えられるので、結果を答えよ、という問題。 メモしないと遅いよ、という問題。 この問題の定義だと、下から埋めていくDPでもできるけれど、アクセスパターンが不規則(ループしない保証くらいはあるだろうけれど)になったときのこと…

1578

PKU

TeXのTabularみたいなののフォーマットが与えられるので、整形した結果を答えよ、という問題。 右寄せ、左寄せ、中央寄せ、の三つのパターンと、仕切り線をちゃんと書くだけ。 lsの結果を、みたいな類題が前にあったときにスキップしたけれど、食わず嫌いは…

450.1

何も考えずにチャレンジすると失敗するってあれほど...。 250 左端の山から順に取っていく石取りゲームで、先手と後手のどちらが勝つか答えよ、という問題。 複数個の石がある山に最初に当たった方が勝つ。後は最後の山に当たった方が勝つ。 500 あいかわら…

1577

PKU

二分探索木からLeafをすべて除去するという作業を繰り返す。この過程で除去されるノード群が順次与えられるので、元の木を行きがけ順で辿った結果を答えよ、という問題。 要は現在地と左の部分木と右の部分木、という順番で答えるだけ。取り敢えず現在位置が…

1576

PKU

ボードゲームのルールと経過が与えられるので、結果を答えよ、という問題。 要は指定された処理をするだけの問題。 時間が取れなかったので、簡単と知りつつ...。

1575

PKU

入力された文字列が指定された条件を満たすかどうか判定せよ、という問題。 条件を実装するだけ...。

1574

PKU

各辺に数字が割り当てられた三角形が6つ与えられるので、重なる辺に同じ数字が割り当てられるようにしつつ、6角形になるように並べる。裏返すことはできないとして、このとき6角形の外周に割り当てられている数字の最大値を答えよ、という問題。 6!通りの並…

1573

PKU

NxMの盤面の各位置で次に移動する方向が指定されている。初期位置が与えられるので、外に出るかループに入るまでのステップ数を答えよ、という問題。 同じ場所にくるまで探索するだけ。これが 8割くらいの正答率にならない理由はどこにあるんだろう?

1572

PKU

文字列の変換規則が与えられるので、それに従って変換せよ、という問題。 javaのreplaceとreplaceFirstは違いますよ、という問題。

1570

PKU

物々交換のリストが与えられるので、二つのものが指定された時の交換レートを答えよ、という問題。 問題サイズが小さいので実装系。BFSでもして交換のパスがあるかどうかを探す。gcdでレートを圧縮しておかないとダメだけれど、それさえすれば途中のどの値の…

2009 Round3

最下位どころじゃない最下位。救いようがない...。結局何も分からなかった。 A ブロックを動かした後に、他のブロックと離れていたら次のターンには必ずくっつくような動きしかできないという、制約付き倉庫番。 見た感じ実装問題。 B 辞書から任意のK個の単…

1569

PKU

CCJの準備というわけでもないけれど、気分転換。 整数座標でいくつか点が与えられるので、それらの三つからなる三角形のうち、他の点を内部(辺上を含む)に持たないもので、最大の面積のものを答えよ、という問題。 三角形の面積の式が与えられていて(外積を…

Beta2

一回だけかと思ってたら結構続くみたい。 300 0と1からなる二次元配列の2x2のマスを90度どちらかに回転させる操作を行ったとする。前の状態がと後の状態が部分的に伏せられて与えられるので、後の状態として可能なもので辞書順で先頭のものを答えよ、という…

2009 Round2

去年よりも圧倒的に難しくて、これはダメだ、って感じだったけれど、システムテスト後で421位らしい。ほとんど気合い実装で通したとしか言いようがない...。 A 0と1からなる行列が与えられて、行のスワップだけで、下三角行列に変換する最小回数を答えよ、と…

449.1

950は1000よりも難しいと常々...。 250 格子点上に頂点を持つ三角形の二辺の長さが与えられるので、可能な最大面積を答えよ、という問題。 長さから可能なベクトルをすべて求めて、最大になるように面積を全通り計算するだけ。面積の計算はいい加減に覚えた…

GCJ 2009 Round 1A

予想に反して難しい順にソートされていて、しかも点数が逆転してたりする。 A ある整数をN進数に変換し、各桁の二乗和を求める。この操作を繰り返し行ったときに1になるものを求めたい。Nに当てはまる数字群が与えられるとき、最小の整数を答えよ、という問…