2008-05-27から1日間の記事一覧

SRM 158 DIV2 Level One - タイヤのローテーション

タイヤのローテーションなんて考えたこと無いよ。 タイヤのローテーションが、1 -> 3, 2 -> 4, 3 -> 2, 4 -> 1こんな感じ。初期設定から何フェーズ目で今の設定になるかという問題。 数学っぽくいけるかと思ったけど、イマイチわからなかったので、テーブル…

SRM 156 DIV2 Level One - ディスクスペースの確保

おっと、一問やり忘れた。 ハードディスクが複数台あるので、ががっとまとめて、最低何台必要か答える。 #include <vector> using namespace std; #define foreach(bind, item) \ for (typeof ((item).begin()) bind = (item).begin(), __ie = (item).end() ;\ bind </vector>…

SRM 157 DIV2 Level One - 数当てゲーム

プログラミング始めた頃に作った気がする。 数当てゲームは、100個の数字の中からランダムに数字を選んで数を当てるゲーム。 もうちょっと簡単にして、上限が9答えが6だとすると、 1〜9までの真ん中(1 + 9)/2の5を選ぶと、上です。と出る。 5は選んだから一…

SRM 155 DIV2 Level One - キープ

こういう問題好きだな。 インカ帝国では文字を持ってなくて、数を表すのに「縄の結び目の形で数で表す」という手法(キープ)を使っていたらしい。 キープ (インカ) - Wikipedia Quipu - Wikipedia, the free encyclopedia へぇぇ。 で、問題。Xで結び目、-が…

SRM 154 DIV2 Level One

また売値と買値。今度はマージンを求める。 入力が文字列なのでちょっと面倒だけど、新しい言語を覚えるには丁度いいレベル。 #include <vector> #include <string> #include <sstream> using namespace std; #define foreach(bind, item) \ for (typeof ((item).begin()) bind = (ite</sstream></string></vector>…

SRM 153 DIV2 Level One

小学生の宿題みたいな。 買値と売値と商品数があって、一番利益が出る商品名返す。利益が無い場合は""を返す。 #include <vector> #include <string> using namespace std; class MostProfitable { public: static string bestItem(vector<int> costs, vector<int> prices, vector<int> sale</int></int></int></string></vector>…

foreachマクロ

C++

なるほど。こうするのか。 #define foreach(bind, item) \ for (typeof ((item).begin()) bind = (item).begin(), __ie = (item).end() ;\ bind != __ie ; \ bind++) しかし、変数補足をどうするのかが問題だ。 マクロの罠にかかる恐れが!! foreach(__ie, ho…

SRM 152 DIV2 Level One - 不動点

くそぅ。問題が全然わかんねぇ。 f(x) = R * x * (1 - x)のRが与えられるのでxを0.25から始めて、不動点を求めていく。200000回不動点を求めてみて、そこから更に1000回求めてみて、最大値と最小値の差がいくつになるかを答える。と、ここまで辿りつくまでが…

SRM 151 DIV2 Level One - PrefixCode

しばらくブログラムよりも英語で悩みそうだ。 電話番号とかだと、東京が03,大阪が06みたいになってる。そういう文字集合をPrefixCodeというらしい。035という番号をどこかの地域に割り当てるなんて事はしないので、PrefixCodeの正当性をチェックしたいと。 {…

SRM 159 DIV2 Level One - 路上駐車できるとこ

ロスで路上駐車の切符切られたことあるww 交通違反って何であんなに凹むんだ!? さて、ルールに基づいて、路上駐車できるところを探していく。 私道の前は停めちゃダメ。 バス停の前と、5,10メートル先は停めちゃダメ。 脇道の前と、5メートル先、5メート…