ハル研究所プログラミングコンテスト2018に参加しました
ハル研究所プログラミングコンテスト2018とは
自分にとっては
- 2度め.
- 2019年卒なので,今回が最後.
今年の成果
- 16位.食べられないクッキー獲得!
- 例年より参加者数が多いらしい.
問題概要
- 20x20のオーブンと,2つのレーン(SmallLane,LargeLane)がある.
- 各レーンには8つの生クッキー(Piece)がある.
- 毎ターン,次のいずれかの行動を取る.
- 何もしない.
- レーンからPieceを1つ取り出し,オーブンに載せる*1.レーンのPieceは自動的に補充される.
- オーブンに載せられたPieceは,Pieceごとに割り当てられる焼きターン数後に自動的に取り出され,Pieceごとに割り当てられるスコアが加算される.
- 補充されるPieceは完全なランダムではなく,「傾向」がある.
- 1000ターン以内に焼き上がったPieceのスコアの総和が,そのステージのスコアになる.
強そうな画像
seed = 100 200 300 400
stage 1 turn 686
*1:回転して置くことは出来ない.
yukicoder No.75 回数の期待値の問題
解説ACしてから理解しようとしたら辛かった
https://yukicoder.me/problems/no/75
https://yukicoder.me/submissions/285676
問題概要
- さいころを振って,でた目を累積する.これを1手とする.
- 累積値がKになったら終了.超えたら0にリセットする.
手数の期待値を求めたい.
キーワード
巡回するDP
おすすめ解説サイト
yukicoder No.75 - 回数の期待値の問題 - ゲームにっき(仮)別館(仮)
典型力高すぎてちょっと分からない
因幡めぐる@競技プログラミング(@meguru_comp)/「【yukicoder No.75】」の検索結果 - Twilog
続きを読む定数倍高速化
アルゴリズムとはほぼ無関係.
スタート地点
遅いコード 2797 ms Submission #3108991 - AtCoder Regular Contest 025
namespace Two
を修正します.
一番早いantaさんを見て絶対届かないと思いました.
続きを読むデータアクセスに制限のある Binary Indexed Tree () の高速化
タイトルについて
正しくは「データアクセスに制限のある Binary Indexed Tree (と同じクエリに答えるデータ構造) の高速化」です
Binary Indexed Tree とは
以下のクエリに時間O(logN)で答えることが出来るデータ構造.
初期化
- サイズNの配列の要素を0に初期化する.
応答
- add(ptr, val) ptr番目の要素にvalを加算
- sum(ptr) 要素[1..ptr]の総和を求める
本記事で加える制約
- データ構造は「カーソル」を持つ.
- カーソルは1つ右,または1つ左へ移動できる.
- 1番目からカーソル位置までの総和を求める
この場合,addとsumを時間O(1)で答えることが出来る.
続きを読むAtCoder Regular Contest 061 - E すぬけ君の地下鉄旅行 / Snuke's Subway Trip
解説と若干違っていたので
概要
https://beta.atcoder.jp/contests/arc061/tasks/arc061_c
鉄道会社の乗り換えを最小化せよ
かなり雑なブログ記事です
続きを読む