2011-04-01から1ヶ月間の記事一覧
だいぶ前に「おやつラーメン」なるものを買って、おやつとして食べてたんだけど、 やっと完食しました。 14個入りってすごい量だねぇ。
文化祭→JOI→修学旅行の荷物を学校に持って行く→APIO→1日の休み→修学旅行 いそがし!
食堂で最強のメニューに今更気付いた。 それは、 「カレーうどん」 そんなに人気はないメニューなのだが、 それなのに何故最強なのかというと、 食堂には「丼物」「カレー」「麺類」の列があるのだが、 カレーうどんなら、「カレー」「麺類」のどちらの列に…
JOI→学校→JOIの流れが非常にしんどい。 うぅぅぅぅぅぅ・・・
なんだこれ。 正直上位層は合宿に参加しなくていいから、問題のレベル下げてくれ〜 1番は、対話型の推理ゲー。 やっぱり出たか。って感じ。 制約気にしてなくて最後の方不正解。 2番はコンビネーション(mod)の求め方分かんなかった。 あるいは使わないで…
「合宿」ではない気がする・・・ 難易度高くてびっくりした。 joitter見事に引っかかった。 大阪会場人数少なすぎワロタ。 dragonはM理事長が邪魔という評判。 防火するより会場変えろよっていう。 メダリスト全員3完なんだろうなぁ・・・ 明日も頑張ります…
Committeeと同じ要領。 こっちはやる気が1以上と決まっているのでその点は楽。 2009ってday4よりday3の方がムズくね? Starry SkyはなんかBLっぽいから知らん。 #include<cstdio> #include<vector> #include<algorithm> #include<queue> #define rep(i,n) for(int i = 0; i < n; i++) #define r</queue></algorithm></vector></cstdio>…
貪欲法でおk。 まず自分(問い合わせのあった国)が取りうる最大の得点Xを求め、 あとは適当に、Xを出来る限り超えないように当てはめていく。 #include<cstdio> #include<algorithm> #include<vector> #define rep(i,n) for(int i = 0; i < n; i++) #define rrep(i,n) for(int i = 1; i </vector></algorithm></cstdio>…
強連結成分分解初めて書いた。(蟻本見ながらだけど) 分解して、どの人からも電話がかかってこない人数を数える。 #include<cstdio> #include<vector> #include<algorithm> #define rep(i,n) for(int i = 0; i < n; i++) #define rrep(i,n) for(int i = 1; i <= n; i++) #define pb pus</algorithm></vector></cstdio>…
縦方向と横方向でそれぞれDPして、後で掛け合わせる。 結構ややこしい。 #include<cstdio> #include<algorithm> using namespace std; typedef long long ll; const int mod = 10000000; int dp[2][1001]; int main(){ int w[2], n, o = 0, p = 1, q = 1; char a; scanf("%d%d%d</algorithm></cstdio>…
貪欲法でおk。 「削除」をするよりも、「挿入」もしくは、2文字増やして「入れ替える」方が良い。 端に注意。 #include<cstdio> #include<algorithm> #define rep(i,n) for(int i = 0; i < n; i++) using namespace std; int main(){ bool f = true; int n, len = 0, x = 0, y </algorithm></cstdio>…
奇数=true、偶数=falseで周期性を見つければ良い。 #include<cstdio> #include<vector> #include<algorithm> #define rep(i,n) for(int i = 0; i < n; i++) #define pb push_back using namespace std; typedef long long ll; ll n, ki; vector<bool> s; ll cnt(ll x){ ll r = x/n*ki, l = x</bool></algorithm></vector></cstdio>…
ファレイ数列ですね。 エジプト→ファラオ→ファレイっていう発想だったりして・・・ #include<cstdio> #include<algorithm> #define rep(i,n) for(int i = 0; i < n; i++) #define fi first #define se second using namespace std; typedef pair<int, int> P; int m, k; P farey(P a, P b)</int,></algorithm></cstdio>…
どうしてもよく分からなかったので、id:JAPLJさんのソースを見た。 予想以上に短くてびっくりした。 うーん座標圧縮いらないとは・・・ 勉強になりました〜。 #include<cstdio> #include<map> #include<algorithm> #define rep(i,n) for(int i = 0; i < n; i++) #define pb push_back</algorithm></map></cstdio>…
今年の部誌大丈夫かなぁ・・・? 期限明日なのに、まだ四人ほど原稿出してないし。 慌てて書くから内容グダグダだしw うん、大変だ。 そういや、おとといあたりに部室の鍵をGETしたから、 「部室の鍵持ってない部長」 からは卒業できた^^;
うん、変わった問題ですね。 ざっくり説明すると、左上と右下に1、右上と左下に-1を書き、 縦と横に一回ずつ総和を取るといいらしい。(ざっくり過ぎか。) nが小さく限られているので、この方法が上手くいく。 #include<cstdio> #include<algorithm> #include<queue> #define rep(i,n)</queue></algorithm></cstdio>…
二分探索にしか見えない。。 思った以上に簡単だった。 汚いソースですが。 #include<cstdio> #include<vector> #include<algorithm> #define rep(i,n) for(int i = 0; i < n; i++) #define pb push_back using namespace std; int main(){ int n, m, a, b, ld = 0, rd = 1000000000, d,</algorithm></vector></cstdio>…
一発で通ったから気持ちよかった。 まぁ、DP臭しかしませんね。 #include<cstdio> #include<algorithm> #define rep(i,n) for(int i = 0; i < n; i++) using namespace std; const int INF = 100000000; int dp[6000]; int main(){ int n, d, a, wm = INF, nm; scanf("%d%d",&n,</algorithm></cstdio>…
学校始まるの怖いなぁ・・・
Herbertの問題が17問溜まってる。 なかなかの自信作も結構あって、 この溢れ出る才能が止められないぜ! ええと、 そうそうHerbertコンテスト 17問あるから、Top coderみたいに3問ずつ出してっても2ヶ月分くらい持つかなぁ〜とか思ってみたり。 ちなみに今…
4月1日つまりエイプリールフールには、必ず嘘をつき、真実を話してはいけないとすると 「今日は4月1です。」 という発言は、このブログのタイトル並みにおかしな発言となる。
今日のタイトルは、嘘です。