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

敵の敵は味方 (AOJ2403)

極大独立集合列挙.(N 敵の敵は味方 の公式解説スライドは普通に嘘が書いてある("実は極大独立集合を列挙していることに相当"が普通に大嘘 例えば0-1-2 で2のみselectedみたいなのが出てくる)のでこのスライドは無視推奨.次数が小さい順に見ていく(点を選んで…

Cruel Bingo (AOJ2231)

問題:N*Nのビンゴ(ななめあり(対角線2つ))の盤面のうち,N*(N-1)個開いてるのにビンゴができてないCruelな盤面は何個あるか,ただし開いてることが確定してるマスがK個与えられる.N

CF 327

また18:00~のセット なんとなく体調よくなかったのでCすぐ解けたら出ようかなあとか思って開始 Cを読む.読めないのでDを読む.これ自明じゃない?もしかして150^4じゃ落ちるのかなあ・・・ 怖かったのでCが解けるの確信してからDをやろうと思ってCを読む.読む…

KUPC2015

東京オンサイト参加しました. 行く途中で会場位置が変わって焦る.変なルートを通り(鷺沼→永田町→(徒歩)→赤坂見附→銀座) まあ結局駅出てから迷った. sugimさんと席が隣になった,勝つぞ~(ちなみにrngさんが前だった)5時間12問. 13:00 20分開始が遅れる 13:20 …

CF 323

CF

おもしろかった A:なるほどね B:乗算じゃない累乗系 C:gcdごとにがんばる D:ord_p(nCk)はp進法表記した時のくりあがりの数に等しい(すごくない?)あとは桁DP あとp進表記にするくらいならBigIntegerいらないですね E:bit列に値が定まっていてandした所に結果…

SRM669

writerでした。 解説 div2 easy: 概要:アイドルがライブをしますmapとかを使いましょうmed: 概要:あみまみがゲームをします実はどうくっつけても同じ結果になります 例えばa,b,cとすると a*b + (a+b)*c とかになって,一般に実は異なる二つのすべての積になり…

TTPC2015 解答

とりあえずP以外解けたので(自分の解答なので想定かどうかは知らない)A:やるだけ B:貪欲 C:実装 D:実装 E:特殊マスが関係ないのに右に2つ伸ばす みたいなのは意味が無い(左右に1ずつのばす とかは意味がある) ので2^K * 4^2 全部試せばOK F:0と9以外では揃わ…

TTPC2015 参加記

11:00 頑張って起きる 12:20 六本木に着く 12:30 迷う,森タワー消滅 12:50 ついた 13:00 contestantが遅刻しすぎて延長 13:15 開始 流石にコンテスト中の順を追うのは面倒なので問題番号順で A:やるだけ B:やるだけ C:めんどいやるだけ D:めんどいやるだけ E…

JAG夏合宿2015 参加記

day1 大学の理学部情報学科のガイダンスがあったので行く,理ロシが多かった.まあまあウェイっぽい人もいた.でも地下の部屋は安心感のあるオタクっぽかった.同期や上の人(なぜかtozanも来ていた)と交流した後Sleepの3人とhogloidで直接オリセンに行く.途中で…

Rings (AOJ2562)

クソコード博覧会. 3次元はだいたい球とかで線分とかとの話になって二次式を解くみたいなのになりがちだが、これはまあまあおもしろかった(設定が簡潔なのもよい)とりあえずきれいに回転させたあとz=0平面との交わりを出して円の内外にわかれてるか判定.交わ…

Minimum Spanning Tree (AOJ2559)

典型良問.こういう分割しそうなやつはとりあえずまず一直線の区間で考えるのが吉.そのあとマージの方法を考えればいい(といってもだいたいいわゆるマージテクが効くと思うけど) dfsがstack overflowして悲しかった(事前にbfsして順番決めるだけで回避できる…

影の魔女 (AOJ2315)

nがk個・・・なんか正規分布に近づくとか・・・みたいにに騙されてはいけない(確信). 冷静に式に落とすと簡単. でかいところではN-ボナッチみたいな遷移式(行列)になる(ので直近N個を縦ベクトルで見る) 小さいところははねかえるので線形代数です. #include <bits/stdc++.h></bits/stdc++.h>…

Sports Days 2.0 (AOJ2432)

典型良問. 累乗系の本質は結合法則.ただの乗算だけでなく,a->bへi回移動での(max,min)長さ とかは典型. #include <bits/stdc++.h> #define rep(i,n) for(int i=0;i<(int)(n);i++) #define rep1(i,n) for(int i=1;i<=(int)(n);i++) #define all(c) c.begin(),c.end() #define</bits/stdc++.h>…

Speedrun (AOJ2591)

公式解説見ればOK こういう系結構出るから気をつけないとね セーブしうる所を全部持って(実装上Nも入れとくと楽)lower_boundで毎回探して30個くらい回せばOK.実装苦手なのでこういうのですら詰まるんだよなあ・・・ #include <bits/stdc++.h> #define rep(i,n) for(int i=0;i</bits/stdc++.h>…

Trip to Kyoto (AOJ 2618)

適当に書いてダメだったら考えようと思って書いた奴が通ってしまった(まあ大丈夫そうではあったけど) 公式解説がないのでだれか教えて 解法:とりあえず道を無視すると45度回転して中心(座標幅の真ん中)がうれしい.道があってもだいたいそこら辺だろ(ヘラヘラ…

あなたはstackをひとつ持っている

探索して、物を拾ったり取り出したりしてなんらかの対応をつけます きちんと対応付けできるか?とか対応付けの個数の最大値は?みたいな問題があります 典型的な例が Stack Maze (AOJ2538)です この場合探索する場所がDAGなので、区間DPが出来ます。何を持つか…

Hashigo Sama (AOJ2542)

読解3,発想1,ライブラリ0,実装3,やる気4 そんなに難読ではないんだけど,1200+の特性上まず読もうとしてめんどくなってCruel Bingoとかに逃げる とかのパターンから逃げるのが難しい ちゃんと読むと解法は一瞬で生える(多分この部分だけだと300点位じゃないか…

Sweet War (AOJ1353)

A-Bにしかよらないのはまあわかる.A-Bは広い範囲の値を取るので,美味しみの方でメモりたくなる.dp[i][j]="i個目以降で(先手が)おいしみjを得るのに必要なエネルギー格差"を持って更新すればいいです.初め逆シミュレーションみたいなのをして頑張って更新をO(…

天下一2015 qualA

13位でした。 Bから開く,あっ(察し) Cを見る どうせ二部マッチング→ちょうどうまくいく二つ以外(奇数サイクルの)swapする意味が無い(そいつらを全部変えればOK)ので二部マッチングするだけ.HとWを間違えて1WAのあとAC. Aを見る.普通に1WAした後展開図をググ…

戻すDP

物体がN個あって何らかのDPをする時、dp[i+1]からdp[i]を復元できる時、復元することを戻すDPという. いや、dp[i]からdp[i+1]を計算したんだからそんなことしても意味ないやろ、と思うかもしれないが、ちゃんと意味があって、"物体を使う順番が関係ない"場合…

TCO2015_2C Japan onsite

に行きました.楽しかった.13:00 当然のように駅から迷う,それどころか建物内でも迷った,と思っていたらそもそも建物が違うとかいう案件(メールに嘘(歌舞伎座タワー本社ではなく松竹スクエアと書いてあった(住所もそっちだった))が書いてあったんだよなあ).そ…

How to Create a Good Game (AOJ2230)

これは1100だと思う 知識5+,頭3,実装力1,ライブラリ力1問題: 正の重み付きDAGで,さらに,任意のiに対し0->i->N-1となるpathがあるものが与えられる.0からN-1への最長距離を変えないように辺の重みを0位上の整数増やす.どれだけ増やせるか.N

Common Palindromes (AOJ2292)

知識4 頭0 実装1 気合1 英語0 700点くらい問題 文字列s,t(長さ50000まで)が与えられる.s[i..j]=t[k...l]かつこれが回文 となるi,j,k,lの組は何通りか.

Kth Sentence (AOJ2341)

500点問題: lowercaseからなる文字列(長さ200まで)がN(複数回使っても良いし,一回も使わなくても良い)できる長さM(

落書きの魔女 (AOJ2314)

苦行だった・・・問題: H*Wのマス目がある.それぞれを#か.で塗る いくつかは既にどれで塗るか決まっている.残りのマスの塗り方のうちもっとも#が多いもののマス目全体の#の数を答えよ.正しいかの条件を満たして塗る必要がある".は連結(4-neighborsで)しない"…

Dungeon Creation (AOJ2393)

H*Wのグリッドで各マスは白か黒で塗られている.H*(W-1)+(H-1)*W個の壁それぞれを立てるか立てないか決めて,全体が連結でサイクルが無いようにする方法は何通りか.迷路→全域木→行列木定理 O(N^3) (N=H*W=7500) だし無理 W=15だしbitDP?→上から埋めてくと実は…

CF #310

CF

はじまったの20分くらい気づかなくて不参加した. 終わった後出ればよかったなあとか思ったけどやってみたらWAを生やしまくったので出なくてよかった(結果論)A.問題を勘違いしていた.そりゃ4に入れる時5に入ってたらダメだよな・・・ B.区間と点の(完全)マッ…

ICPCdomestic2015 参加記

sleep 18000(@wafrelka @wo_M @sigma425)の3人で出ていました. 問題 順位表東大内3位,全体4位で通過しました.やったぜ.開始前 スクフェスをしたりリハーサル pic.twitter.com/6RDGDZiYfS— SRM510 (@sigma425) 2015, 6月 26 かわいい画像を送ったり@mofmoffox…

フロー押し戻し系

実装を何通りか試してみた,AOJ2313 ハコの魔女 にsubmitして確かめてますa.隣接行列で持つ(int G) N b.vector Gを持つ Nがもっとでかいとaの方法は無理.しかしこれにはまあわかりやすい欠陥があって,eraseが遅いです.(sortしててもダメで,なぜかというと消し…

Do use segment tree (AOJ2450)

問題を見た瞬間にやるべきことがわかるのでやるだけ・・・ やるだけ・・・(◞‸◟)(◞‸◟)(◞‸◟)(◞‸◟)まず列で考えると,sum,l,r,mx(それぞれ、区間の総和,左と連結してる時の最大,右と〃,sub区間のmax)を持つsegtreeが必要とわかる(これの強いバージョンを…