simanのブログ

ゆるふわプログラマー。競技プログラミングやってます。Ruby好き

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

Marathon Match 150 QueenAttack Postmortem

Problem www.topcoder.com Last submission MM150 last submission · GitHub Strategy The following process is repeated at high speed and the one with the best score is adopted. By using SA method to obtain an arrangement in which the queens do…

Marathon Match 150 QueenAttack 参加記

問題 www.topcoder.com コード MM150 last submission · GitHub 戦略 以下の処理を高速に繰り返して一番スコアが良くなるものを採用します。 なるべくクイーン同士が取り合わないような配置を焼きなまし法で求める 求めた配置に対して最小費用流を用いて位置…

AHC027 Recurring Cleaning Route 参加記

問題 A - Recurring Cleaning Route 戦略 ビームサーチによる初期解生成 焼きなまし法による経路改善 ビームサーチパートは 500msec (テストケースによってはもっと速く終わる)、焼きなましパートは 1500msec 使用しています。 ビームサーチによる初期解生成…

AHC026 Stack of Boxes 参加記

問題 atcoder.jp コンテスト中ずっとバグ修正してたので参加してたかと言われると怪しい 戦略 基本的な部分は上位の人達と一緒です 任意の山を 1つ選択する 選択した山からすべての箱を取り除く 空になった山に昇順になるように箱を置き直す 山が全て昇順に…

AHC025 Balancing by Balance 参加記

問題 A - Balancing by Balance 戦略 パラメータによって「ソートを行う」「ソートを行わない」の2パターンに分ける。ソートを行う場合はマージソートを使ってアイテムのソートを行う。箱ごとの比較を行い最も重い箱の重量と最も軽い箱の重量の差分が小さく…

Marathon Match 148 Frogs 参加記

問題 www.topcoder.com 方針 各カエルの行動をなるべくコインが集まるように焼きなましで決定する。 提出コード MM148 last submit · GitHub 焼きなましによる行動探索 各カエルごとに「このターンに移動する方向」の情報を持たせ、任意のカエルの移動方向を…

Marathon Match 147 SurfaceReconstruction 参加記

問題 www.topcoder.com 提出コード https://gist.github.com/siman-man/2218aee9a4a99e3bc6c780dbb72066ba 方針 N と A の値からサンプリングの回数を決定 クエリーの投げる位置を焼きなましで調整 クエリーの結果からグリッドを生成している方程式のパラメ…

#15 atmaCup 参加記

問題 www.guruguru.science 結果は 57位 方針 LightGBM 1本で戦いました。 test データに存在するユーザに対して train データに含まれている場合と含まれていない場合で 2つモデルを用意して予測 考えた特徴量をすべて突っ込んで LightGBM さんに頑張っても…

ICFP Programming Contest 2023 参加記

問題 https://www.icfpcontest.com/specification_v3.pdf M人のミュージシャンと A人の観客がいて、観客の満足度を最大化する問題でした。 満足度はミュージシャンと観客の距離とミュージシャンが演奏する楽器の種類によって決定されます。また、ミュージシ…

Marathon Match 146 HappyGrid 参加記

問題 www.topcoder.com 最終提出コード https://gist.github.com/siman-man/f8e9022891d996d36d5f505f67ff929d 方針 「盤面の作成」「ボールの移動」の 2つのフェーズがあります。 焼きなましによる盤面の作成 最小全域木を作成し葉の頂点を埋めるようにボー…

ALGO ARTIS プログラミングコンテスト2023 参加記

問題 atcoder.jp 方針 放送局の電波の強さを焼きなましで求める 使用する放送局を頂点とした最小全域木を求める 電波の強さを焼きなましで求める 各放送局の電波の強さを焼きなましで求めました。遷移としてはランダムな放送局を 1つ選んで電波の強さを変化…

CodinGame のローカル対戦ツール psyleague を試してみた

CodinGame のコンテストでは終盤になるとサブミットしたボットがすべての対戦を終了するのに数時間かかることも珍しくないので、ローカル環境で開発 & 検証を出来ることが重要になっています。 Spring Challenge 2023 では cg-brutaltester を利用してローカ…

Spring Challenge 2023 参加記

問題 www.codingame.com 久々の参加 方針 拠点と資源(クリスタル・卵)を頂点として最小全域木を作る 木の上にビーコンを配置し、ビーコンの強さを焼きなましで決定 どの資源を狙うかについてはターン毎にルールベースによって決定する 最小全域木の作成 資…

MC Digital プログラミングコンテスト2023 参加記

問題 atcoder.jp 方針 それぞれの空間からランダムに座標をいくつか選ぶ シルエットAの回転方向は 0で固定、シルエットBの回転方向をすべて試して一番評価が良くなるブロックを選ぶ ブロック設置後に 1マス延長を試してスコアが良くなるなら採用する処理をス…

競技プログラミング獲得賞金(2022年)

一覧 コンテスト名 順位 金額 備考 Hitachi Hokudai Lab. & Hokkaido University Contest 2021 B問題 2位 100,000円 MC Digital プログラミングコンテスト2022 4位 30,000円 賞金対象外者が 1名いたので繰り上げ 第8回 Asprova プログラミングコンテスト 9位…

MM143 TreeMaker 参加記

問題 www.topcoder.com 戦略 完成図の作成を行う 色の配置を決める タイルの配置を決める 初期解の作成 枝の追加・削除による木の変形 完成図に対してもとのタイルとのどのタイルが対応するのかを割り当てる 盤面を操作してタイルを揃える y軸を揃える x軸を…