WARush

SRMの結果とか、解けた問題のコードを書いていきます

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

SRM573 Div2 Hard "TeamContestEasy"

問題 http://community.topcoder.com/stat?c=problem_statement&pm=12467 訳 N匹のオオカミがいて、各々の居る位置が 2次元座標x(0),x(1)...x(N-1) y(0),y(1)...y(N-1)で与えられている。 オオカミたちはM回動く。 オオカミが(x,y)にいるとすると、1回で(x…

SRM573 Div2 Medium "TeamContestEasy"

問題 http://community.topcoder.com/stat?c=problem_statement&pm=12471 訳 3 * N人の生徒(0,1,2...3N-1)がプロコンに臨もうとしていて、 彼らのコーディング力が分かっている。あなたのチームは生徒0,1,2であるが、 他のチームはどのメンバーが組んでいる…

SRM573 Div2 Easy "SkiResortsEasy"

問題 http://community.topcoder.com/stat?c=problem_statement&pm=10553 訳 2つの正の整数A, Bにて、A similarであるとする。 例えば、1と10はsimilarであるが、1と11はそうではない。整数lowerとupperが与えられる。 lower以上upper以下の整数から、 既に…

SRM573 Div2 練習

難易度 Coding Time Status Point Easy 0:08(?) AC 233.31 Medium 0:45(?) AC 231.10 Hard 0:23(?) Open - Mediumの実装にてこずってしまった。 ループインデックスの挙動を細かく分析しつつの実装って苦手だ。

Codeforces #173 Div2 E "Sausage Maximization"

問題 かの国のソーセージは奇妙な事に、 負ではない整数の配列で表現される。ソーセージの美味さは、その配列の値をを全てxor演算したのもになる。 例 ソーセージ 1 2 美味さ 3 (1 xor 2) ソーセージ 1 2 3 美味さ 0 (1 xor 2 xor 3) 今、配列の長さNの1本…

Codeforces #173 Div2 D "Yet Another Number Game"

問題 奇妙なゲームがある。 ゲームを始めるにあたって、 まず負ではないN個の整数a1, a2 ... aNが与えられる。 そして、以下の2つの操作のどちらかを行う 操作A. a1からaNまでの整数を選び(aiとする)、数値x(1 それをaiから引く。 ai = ai - x 操作B. a1…

Codeforces #173 Div2 C "XOR and OR"

問題 ビット列とそれに対して行う以下ようなの操作がある。 隣り合う2つのビットを選ぶ。以下(x,y)とする p = x or y q = x xor y というpとqを求める。 xをpとqどちらかと置換する。 yはもう一方(xがpだったらq,qだったらp)と置換する。 2つビット列a,bが…

Codeforces #173 Div2 B "Painting Eggs"

問題 Jおじさんは、来たるお祭りのために、 N個の卵をペイントしたいと思っている。 そこで、甥であるAとGにこの事を頼みたいと思ったのだが、 彼らは卵一個につきお金を払えと要求してくるのだ。Jおじさんは妙な事に気付いた。 それぞれの卵で、Aの要求額と…

Codeforces #173 Div2 A "Bit++"

問題(直訳) Bit++というプログラミング言語がある。 この言語は以下のような2つのオペレーションがある。 Operation "++" → 変数Xの値を1増加させる Operation "--" → 変数Xの値を1減少させる Bit++のステートメント(文)は1つのオペレーションと、1つ…

Codeforces #173 Div2

問題 Submit Time Status A 00:12 AC B 00:34 AC C 00:59 AC D - - E - - Rating 1415 → 1613 3完うれしかった。

Codeforces #172 Div2 C "Rectangle Puzzle"

問題 W * Hの長方形の中心をA度反時計回りに回転させる。 元の長方形と、回転後の長方形の重なっている部分の面積を返せ。 制約 1 0 ACしているコードをカンニング 基本的な考察 中心でぐるりと回すので、答えとなる面積は 面積(30度) == 面積(150度) 面積(6…

Codeforces #172 Div2 B "Nearest Fraction"

問題 整数 X Y Nが与えられる。 X / Yに最も近い値をA / Bの形で出力しなさい。 ただし、B 候補が2つ以上ある場合、なるべくBの小さいものを、 それでもまだ複数ある場合Aの小さいものを出力しなさい。 制約 1 考えた事 10^5か・・ 1 計算量でだめだな。A /…

Codeforces #172 Div2 A "Word Capitalization"

問題 与えられた文字列の、最初の文字を大文字にしなさい。 制約 文字列の長さ 考えた事 あれ? アウトプットに!マークが出てきた?大文字だったら変換しないようにしなきゃ ソースコード int main() { int offset = 'A' - 'a'; string str; cin >> str; if(…

Codeforces #172 Div2

問題 Submit Time Status A 1:02 AC B 1:01 AC C 0:00 - D 0:00 - E 0:00 - バーチャル参加Bが解けたのがうれしい。

Codeforces #171 Div2 E "Beautiful Decomposition"

問題 整数Sが2進数表記の文字列で与えられる。 2^k(k >= 0)を足したり引いたりして整数Sにする時、 足したり引いたりする回数の最小を返せ。 制約 1 考えた事 DPっぽいが、Tagにあるように貪欲にいける。基本的には'1'になっている所の分だけ足していけば…

SRM572 Div2 Hard "DistinctRemainders"

問題 以下のような特徴を持った 整数の配列S = (S[1], S[2], ..., S[K])を考える。 K >= 1. S[i](1 S[1] + S[2] + S[3] ... +S[K-1] + S[K] が N となる。 S[1] mod M, S[2] mod M ... S[K] mod M が 全部違う値になる。 NとMが与えられた時、上記の特徴を満…

Codeforces #171 Div2 D "The Minimum Number of Variables"

問題 N個の正の整数を持つ配列A(1),A(2),A(3),...A(N)がある。 この配列の中に同じ数値は2つとない。この配列を使って以下の操作をする、 まずA(1)を変数に代入する。 それからA(2)からA(N)までは以下のようにする。 A(i)の時、 2つの変数(2つとも同じ変…

Codeforces #171 Div2 C "Ladder"

問題 地形の高さを表すA(1),A(2)....A(n-1),A(n)というN個の整数が与えられる。 またL Rの二つの整数を含むクエリがM個与えられる。 クエリは地形のL地点からR地点まで、つまりA(L),A(L+1)....A(R-1),A(R)の部分が "Ladder"であるかを問い合わせている。Lか…

Codeforces #171 Div2 B "Books"

問題 休憩中に図書館に本を読みに来た。 図書館に本はN冊あり、それぞれ1からNまでの番号が振られている。 また、i番目の本を読み終わる時間はA(i)として分かっている。i番目の本から読み始めたとすると、 その後i, i+1, i+2・・と読んでいく事にする。休憩…

Codeforces #171 Div2 A "Point on Spiral"

問題 平面上の座標を (0,0) (1,0) (1,1) (-1,1) (-1, -1) (2, -1) (2, 2)・・・ とぐるぐる回っていく。(x, y)まで行った時に、何回曲がったかを返せ。 制約 1 考えた事 xとyが100以下って事は、愚直にシミュレートしても 計算量は40000回ぐらいだな。 (っ…

Codeforces #171

問題 Submit Time Status A 0:29 AC B 0:00 - C 1:45 WA D 0:00 - E 0:00 - Rate 1475 → 1415ACは1問だけ 自分の実力のなさを痛感。

SRM572 Div2 Medium "NextOrPrev"

問題 文字列に対し、下記の2つの操作を行える Ope "Next" : 'z'以外の文字を1つ選び、その文字を次のように変える。(a->b b->c c->d ... ) Ope "Prev" : 'a'以外の文字を1つ選び、その文字を次のように変える。(z->y y->x x->w ... ) 例) aabc -> 操作 "N…

SRM572 Div2 Easy "EasyHomework"

問題 数列が与えられる。 その数列を順に掛け算していった時に、 答えは 0より大きいか、小さいか、0かを返せ。 制約 1 -10^9 考えた事 現在の数値 次に掛ける数値 結果 + + + + - - - + - - - + これを要素数だけやる 他の人のソースコードを見て あ・・・ …

SRM572 Div2

難易度 Coding Time Status Point Easy 0:09 AC 228.02 Medium 0:58 AC 200.49 Hard 0:07 Open - 順位 156位/766 Rate 962 -> 1030初めてレート上がった!わーい 相変わらず実装スピードが遅いけど、2完はうれしい。

Codeforces #170 Div2 D "Set of Points"

問題 整数N,Mが与えられる。 どの頂点も凸になっているM角形を作れるように、 上手い事N個の点を配置しなさい。 どの頂点も凸になっているMより多い頂点を持つ 多角形が作れちゃだめ。また、点を配置する時は任意の3つの点が一直線に並んではならないし、 …

Codeforces #170 Div2 C " Learning Languages"

問題 ある会社には社員がN人いる。 この会社は国際的なので、M個の言語が公用語として認められている。社員は予めいくつかの公用語を習得しているが、(まったく習得してない社員もいる) 会社が支持すればあらたな言語を学ばせる事も出来る。 ただし、1人…

Codeforces #170 Div2 B "New Problem"

問題 文字列がN個与えられる。 これらの文字列のどの部分文字列とも一致しないような なるべく長さの短い文字列を返せ。 そのような文字列が複数あるのなら、 辞書順で最も小さいものを返せ。 例) インプット N = 2 hello world apple アウトプット bインプ…

Codeforces #170 Div2 A "Circle Line"

問題 駅がN個ある。 各駅に番号が1からNまで振られている。 例えばNが4だったら 駅は1 - 2 - 3 - 4 - 1 と繋がっていて(山の手線みたいな感じ) その距離が与えられている。指定された駅A,Bの最短距離を求めよ。 つまり内回りがよいか、外回りが良いか 制…

Codeforces #169 Div2 C "Little Girl and Maximum Sum"

問題 要素数Nの整数の配列がある。 また、配列のインデックスLからRまでの総和を求めよという クエリがQ個ある。クエリの結果の合計値が最も大きくなるように 配列を並べ替えた時、その合計値を返せ。 制約 1 1 考えた事 クエリ一個一個調べてって、 このイ…

Codeforces #169 Div2 D "Little Girl and Maximum XOR"

問題 AからBの間でXORしたときに最大になるような 2つの整数を選び、そのXORしたときの値を返せ。例) A=1 B=2 2(10) xor 1(01) = 3(11)が最大A=8 B=16 15(01111) xor 16(10000) = 31(11111)が最大A=1 B=1 1(1) xor 1(1) = 0(0)が最大 制約 1 考えた事(2時…