投稿

9月, 2017の投稿を表示しています

科学の甲子園校内予選参加記

開始数秒後、情報がないことに気づく 僕の仕事終わりなんですが。 みんなすごいね 化学担当と物理担当の頭がすごい 仕方がないので 数学を解いた 参考文献は無いので雰囲気だけ なんと4問だけだった 2問目は二分探索で解けることがわかった() 3問目の図形問題を解いた ゴリラのための問題だったので思考を停止させた 僕「cos 135°ってなんだっけ…」 プリン(仮名)「簡単」 僕「わからんな…」 ……仕方がないので45° + 90°にして加法定理で解く 僕「なんで僕135°で加法定理使ってるの…」 終了後ほかチームと確認したし、 1/4って数字くらいしか出てこなかったので実際に定規あてれば(規制) 結局僕一問しか解いてないw 予選頑張ってきてくれ~(PCK)

日記#5

S013:理想のタイムトラベル パイザスキルチェック の 理想のタイムトラベル を終わらせました 一回やって失敗してしまいましたが、なんとか満点解法をつくりました やったね 残るは S009:辞書順最小 のみです パイザスキルチェックの問題は簡単ではありますが、 バランスがいいので全部埋められれば実力は結構あるほうだと思います CombNafに行けます 旅ですw LTはやる予定はないですけど、気が向いたら作りたいかもしれない(うーんw) LT多くなりそうらしいので聞くだけでいいですかね たのしみ ねもーしょん

日記#4

最近わかったことがあるのですが、ブログは書くことをひとつに絞ったほうがいいでしょう 僕は適当に好きなこと書くスタイル続けます paizaスキルチェック Sランク問題を満点で埋めています 解法は一切言えませんが(マナーであり、規約である)、残りも自分の知識で解けそうなので、埋めきってすっきりしたい 競プロ精進したい人はおすすめできないよ、答え見れないからね S014:直方体のマージ をさっきやってきました 楽しかった笑(しか言えない) ま、やってみなよ 出た瞬間にやって明後日な解法を書いてしまい13位だった 残るは S004:積まれた文字 // 終わってた S009:辞書順最小 S013:理想のタイムトラベル です S***の解法は*****なので秒で終わりますね S001など消えている問題もあるみたい。黒歴史かな 主な戦績は2位が2回ほど Dでは1位を取ったことあるけど、そうでもない D梅とかだれも評価しないからやめとけ(爆) AtCoder埋めよう 難易度 paizaスキルチェックの難易度は、例えば同じAやSでもバラつきがあります。が、競プロ(比較ばかりしてすまん)をあらかたしていれば全部簡単といったところです。 ただし小数、てめえは苦手だ。 (倍精度で殴れ) 怖いから倍精度使うけど単精度で十分なこと多いよね…多くない? なんかもうSよりもAの方が苦手です ブログでは教えられないですが、 困っている人がいたら教えてあげたい… 解いた後でメールとかならいいんじゃないかな…グレーかな… VSCode起動しないままにしてたら更新来てる… 大学に行く頃には、VSCodeやEcmaScriptはどれくらい変わっているんだろう…仕様変更ぐらいは追っていたい…そのころES2019か… ESLintはQiitaにマイナー単位で日本語の解説をしてくれている方がいるので( @mysticatea )おすすめです Macでファイル名にコロン使ったらWindowsで文字化けるという事件が。 東京いったらイベントとライブたくさん行きたい、行きたい 可愛い女の子は可愛いし、可愛い男の子も可愛い では今週も...

日記#3

イメージ
こどふぇす2017qualA A - Snuke’s favorite YAKINIKU はい。 C++の文字列云々わからないんので一文字ずつためした string::substr(pos, len)あるんですね、把握 B - fLIP 縦横にいくつ選ぶか以外で結果は変わらないので、全探索 C - Palindromic Matrix 4個必要なアルファベットの数と実際にある数、 奇数が一個あってもいいかどうか((h%2)&(w%2)) で判定 奇数が二つ以上あったら不可 3完です レート上がったのでよしか(向上心) D、適当なWA回答作ったら模様みたいなの見えたんだけど、思考がトマト 16時起きのせいで眠くなくてつらい おやすみ

PCK17-3

一覧・参加感想記事 問題公式PDF AOJ 1-5問目 6問目 7問目←ここ これは解説なのか? 7:積み荷の配置 これ本番中にできなかったの悔しいな…と思いつつ結構考慮しなければいけないケースが多くて実装時間かかった bitDP ですね。 蟻本にもタイル敷き詰めの問題がありましたが、 タイル敷き詰めを見たらbitDPだと思えるようになっておこうね(思っただけで終わった僕のようにならないように実装練習しようね) 解法 1行ずつ見ていく。 ある行を見ているとき、2行上は気にしなくていいね。 よって、横4マスのうち左3マスに左上が置かれているか、という情報を保持する。 状態数は1行に2^3 = 8個、1e4行で8e4通りなので十分間に合う。 ちょっと、そのうちちゃんとした図解作りかも知れないし作らないかもしれない。 英語間違ってるかも(弱)。 #include <iostream> #include <algorithm> using namespace std ; #define FOR(i,a,b) for(int i=(a);i<(b);i++) #define REP(i,n) FOR(i,0,n) #define RFOR(i,a,b) for(int i=(b)-1;i>=(a);i--) #define RREP(i,n) RFOR(i,0,n) int bitcount[] = { 0 , 1 , 1 , 2 , 1 , 2 , 2 , 3 }; int h,n; bool b[ 4 ][ 10000 ]; int dp[ 2 ][ 1 << 3 ]; int main(){ cin >> h >> n; REP(i, n){ int x,y; cin >> x >> y; b[x][y] = true ; } REP(y, h- 1 ){ int *prev = dp[ 0 ]; int *now = dp[ 1 ]; ...

PCK17-2

一覧・参加感想記事 問題公式PDF AOJ 1-5問目 6問目←ここ 7問目 6:トランポリン まず10で割っておいて、左右にいくつ動けるか計算しておきます。それをd[i]とします 行きを考えます。 iを0からカウントアップさせていきます。 今iにいるとしたら、i+d[i]まで行けますね。 これをcangoとしましょう。 そのとき、今までのcangoより大きくなければ、 今までで最大の場所から飛べばいいので、更新しなくてもいいです。 こうやって次にいけなくなるか、n-1にたどり着いたら終了です。 n-1にたどり着いていたら、同様に帰りも計算します。 計算量はO(N)です。 #include <iostream> #include <algorithm> using namespace std ; #define FOR(i,a,b) for(int i=(a);i<(b);i++) #define REP(i,n) FOR(i,0,n) #define RFOR(i,a,b) for(int i=(b)-1;i>=(a);i--) #define RREP(i,n) RFOR(i,0,n) const int _N = 3e5 + 100 ; int n; int d[_N]; int main(){ cin >> n; REP(i, n){ cin >> d[i]; d[i] /= 10 ; } // 行き int i= 0 , cango= 0 ; for (;i <= min(cango, n- 1 );i++){ cango = max(cango, i+d[i]); } if (cango<n){ cout << "no" << endl; return 0 ; } // 帰り i= 0 ;cango= 0 ; for (;i <= min(cango, ...

PCK17-1

一覧・参加感想記事 問題公式PDF AOJ 1-5問目←ここ 6問目 7問目 1-5問目はプログラミングの基礎の for文などの繰り返し if文などの条件分岐 不等式を使った条件式 剰余算(割ったあまり) とか押さえてればおkだよ ほかに、 三項演算子 関数 配列 とかも理解しておこうね 1:お年玉 平均。奇数は考えなくてOK。かならず確認するように! C++ #include <iostream> using namespace std ; int main(){ int a,b; cin >> a >> b; cout << (a+b)/ 2 << endl; } 2:買い物 分岐。ifが使えればとける。 algorithmのmaxはご自由に。 #include <iostream> #include <algorithm> using namespace std ; int main(){ int a,b,c; cin >> a >> b >> c; // 買えない // a+b = 二人の小遣い合計 if (c>a+b) cout << "NA" << endl; // 買える else cout << max(c-a, 0 ) << endl; } 3:9月X日 曜日を求める。7日周期だから7でMODをとればいい。このとき0日目(≡7日目)が何曜日か考えると早い(?) switch文でもいいけど、以下のような配列をつかってもかけるよ。 逆に日付30通り書いてもいいよ。 #include <iostream> #include <algorithm> using namespace std ; string days[] = { "thu" , "fri...

PCK17予選通過

やりました。 8完目は実質後輩(相方)の考察あってのこと 本選に行く方はどうか仲良くしてください PCKのグランプリでJOIにいきたい!w ← いや通っただけ奇跡ですほんと感謝 解法・解説ペタペタしていく 問題URLはすべてAOJ、解は僕のやつ 解説には、さらに初心者向けのコード例も書いているのでぜひみてね 予選 n 問題名 ソースURL 記事URL 1 お年玉 Solution PCK17-1 2 買い物 Solution 〃 3 9月X日 Solution 〃 4 予約システム Solution 〃 5 電線 Solution 〃 6 トランポリン Solution PCK17-2 7 積み荷の配置 Solution PCK17-3 8 [Solution] 9 [Solution] 10 [Solution] 11 [Solution] 随時更新 感想 完走!wをしたかった。(別世界) 順位表の下側が地域枠なんですね、把握しました。 地域枠だけどっていっているプロ、かなり強いんじゃないかな… 順位にねじめれて、なにはともあれ本選いけてよかったです! 楽しみだね!旅行だよ旅行! 近況 受験生なので受験ベンキョヌをする AtCoderぐらいはするよ、ていうか土日の夜ぐらいはゆっくり 書き上げた記事を公開してなかったのでサッと公開しといた そしてCTFの参考書を買った 楽しい~~ 読んでいこうかな Linuxの環境とかちゃんと整えていきたいな。

久々のマイクラWithMod

イメージ
いつぶりだろうか、マイクラにModをぶち込んで久しぶりに実況と呼べそうなものをやってみようと思った。 マイクラはゆっくりで実況する方が楽しいと思うので、ゆっくりたんに任せて僕はゲームをやるだけにした。 ModはめんどいのでFTB先輩の便利セットをちょいちょいと使うことにした。 したのだが、なにか統合とかいろいろあって使い方がだいぶわからなかった。 twitchとやらとCurseとやらが統合したとか言われて、 twitchのセットアップをぶち込まれました。 なにそれww どうやら一番したのやつがFTBというわけですね。 いくつか試しながらやっていこうと思います。 いやーほんと久しぶり!!! ♪( ´▽`)

日記#2

ABC073 2WA全完。yesとYes。 未だにビギナーズラックで取った初参加の順位を超えられない>< 初WF 全点対最短路問題とかどう使われるんだろうと思っていたら、 今回のD問題で出ました (実はR回のdijkstraでも間に合う) 今回bitDPを使いましたが、要らないみたいでした bitDPがO(N × 2^N)なのに対し、DFSや全列挙はO(N!)ですが、N=8であるこの問題は間に合うようです また、next_manipulationというライブラリもあるようです。 覚えましたし。 使うときはソートを忘れないようにね。 WFは実装は簡単なので、実装だけ覚えて入るけど、証明がわからない、とツイートしたところ、 ワーシャルフロイド、dp[i][j][k]=iとjと1~kの頂点のみを使ったときの、i->j最短路の漸化式、 dp[i][j][k]=min(dp[i][j][k-1], dp[i][k][k-1]+dp[k][j][k-1]) kの次元を節約したものなので、当然kは一番外のルー — eiya@受験競プロC++ (@eiya5498513) 2017年9月9日 プ。 とeiyaプロがおっしゃっていました(空リプというわけじゃないかもだけど、ありがとうございます) ふむふむ。? まあなんとなく← 近いうちにちゃんと考えよう。 2017/09/09時点での 競プロ日数:204日 精進数:76 精進表にPCK2017preの結果を書きたいと思いつつも、 データが無いので、あとでAOJで解きますか。 精進表、Solutionを重視した書き方をしていたが、 Genreで分けたほうが、やっぱり想定解とかあるしいいかなと思いました。 ※AOJではProblem Classification と Algorithm Classificationと言われていますね Solutionは2つ使ったり、包含関係があったりするからね Genreって何があるんだろ Simple Math Geometry Graph Simulation Puzzle String こんな感じですか 後半はAOJリスペクトです ただAOJの分類はわからないのが多い そのうち書き換えるか―、と。...

PCK2017予選参加記

イメージ
PCK2017予選参加記 お疲れ様です 高校一年生の後輩と参加してきました 8完3WAでした 順位表は予選終了30分前の16:00で止まりました 3WAは全て僕です。本当にすみませんでした。 (慌てすぎて実装ミスりまくった) 9問目を実装中に時間切れになりました 解いたのは1,2,3,4,5,6,8,10です 6問目はBITで殴ったのですが、SEG木で殴る方法も考えたのですが、 どうやらどっちもいらないようですね… 解説もしくはAOJでの公開を待ちたいと思います… やはりバグ埋め込みしてしまうのが良くないですね… 1位は全完0WAの開成高校です(神すぎるw) 平成29年9月15日(金)に、パソコン甲子園ウェブサイトで発表します。 出典 だそうです。 今回10が解けたのは、相方が DAGは入次数が0の点の数と、出次数が0の数の大きい方の数だけ有向辺を追加すると、グラフ全体が一つの閉路になる ことを導き出してくれました 証明を別記事で(彼に聞いてから)書こうかな にゃ 昨年度の結果URLをようやく見つけました http://web-ext.u-aizu.ac.jp/pc-concours/2016/final/f_finalteam.html 2017を2016に変えればいけるようですね。 せめてサイトマップに乗せてよ 年 1最低点 2公開チーム数 3全チーム数 2016 62 10 24 2015 55 10 25 2014 34 11 24 2013 58 15 32 1. 公開されている最低点 2. 点数公開されているチーム数 3. 新人賞以外の予選通過チーム数 九州なので地域取れるかー!?とか言ってましたが、 新人賞は1年生同士で構成されたチーム限定でした。 16:00時点でのボーダーは大体0WA6完ぐらい 例えば2016年の62点は大体8完です 石油王は8完0WA以上とおっしゃってます いろんなチーム名ありますね uniの前後にUnicodeの謎の羽がついたチームありましたが、Macだと見れませんでした Safariで見れまし...