ABC348 (2024/04/06)
〇A問題
まーす.iconfor文で3の倍数のときは,xそれ以外はoを追加.
tako.icon適当
CarpDay.icon N小さいし,文字列連結の方が綺麗かな,と思いつつ,素直にリストで実装.
kakip.icon"oox"*100をスライスする CarpDay.icon おお!
TTT.icon ans = ''にx,oをその都度追加して,最後にまとめて出力しました.
Kaplam.iconコピペめんどかったからそれぞれ小文字のxと小文字のoだと信じて出したけどちょっとドキドキした
〇B問題
tako.icon地味にめんどかった
まーす.icon2重ループまわして各2点間の距離を求めてやった.最大値を取るindexを調べるのにもfor文で検知した.
CarpDay.icon計算誤差怖いので,平方根は取らずに実装.タイピング,みんな速いなぁ.
TTT.icon (x1, y1)は前から順に,(x2, y2)は後ろから順に,2重forを回して、最終的な最大値のインデックスを出力しました.
kakip.icon(距離、ーインデックス)でソート
Kaplam.iconCarpDay.iconさんと同じ、掲示板にいた頃に得たタイピングでぶいぶい
〇C問題
tako.icon色がキーの辞書に最小値を入れていく
TTT.iconCarpDay.iconkakip.iconKaplam.icon tako.iconさんと同じです.
まーす.icon他の方々とは順番が逆で,色ごとにおいしさをappendしていき,その中 (その色の中) で最小値を求めて,ans = (ans, 前で求めたビーンズのおいしさの最小値)とした.
〇D問題
TTT.icon 深さ優先で実装しました.AC45,WA8でした.使った薬をそれより下の深さでは無くして,それより上の深さでは残したかったのですが,どう実装すればいいのか思いつきませんでした.
kakip.iconDFSした。pythonでTLEしたのでC++に変えてもらって提出したらTLEx1。時間ぎりになったらランダムに出力して終了したら通るんじゃねって思って10回以上提出して無理だった。でもなんか処理終了させる処理の位置を変えたら急に速くなってACした←??????
kakip.icon解決した、時間の判定が若干重いだけだった
tako.icon普通に幅優先したけどTLEばっかり
CarpDay.icon エネルギー補給したりしなかったりで条件変わるので, エネルギー量に関するheapqで実装しました.はじめ,使った薬を削除するのを忘れてて,入力例3で無限ループしました..
CarpDay.icon解説の方法も実装してみたら,WA連発..ゴールに薬が置いてある場合の考慮漏れが原因.本番で別の方法採用していたのラッキーでした.
まーす.iconこういうgrid問題は生理的に受け付けないので飛ばし.(克服しなきゃ......)
Kaplam.iconBFSで頑張る、1回目多分余計な探索が多くてTLE,2回目別ファイルで書き直したの忘れててサンプルすら通らず,計算量的に1回目ので問題なさそうだったけどdequeに”更に多くのエネルギーを持ってて同じマス”の探索を既に入れてる時探索しないようにしたら間に合った 追記:解説読んでて気付いたけどゴールに薬ある時の事考えてなかった(ゴールを薬で上書きしちゃうから落ちる) あぶね
〇E問題
tako.iconLCAっぽいなーとか思いながら調べて実装したけど問題はそこじゃなかった。
CarpDay.icon LCAっぽいなーと思いながらネット検索.LCAを使えば2点間距離は$ O(logN)で求まるけど,2点間が$ N^2あるからどうすんねん!解決方法思いつかず,F問題と行ったり来たりしている間に終了.
CarpDay.icon諦めて解説読む.木の勉強になりました.知っていたら簡単な問題.これを機に身につけたい.
Kaplam.icon全部の頂点間の距離求めるワーシャル・フロイド法とか考えてたけどどう考えてもN^2かかるからむり
〇F問題
CarpDay.icon2つのリスト比較するのに$ O(N),比較するペアが$ O(M^2)あるので,単純には$ O(NM^2)で無理.仮に要素が0と1しかないと単純化した問題さえ解法が思いつかず.
CarpDay.icon 諦めて解説読む2.何と,手続き自体は単純.bitsetを使って高速化する問題でした.勉強になりました2.
まーす.iconE問題も難しく感じたので,Fをずっと粘ってた.方針は辞書(set)使ってどうこうする方法なのだが.......こういう一見出来そうに見えて,難しい問題は解いてて楽しい!!
まーす.iconコンテスト後に私の方法では不可能だということがわかり,激萎え.......同じ数列に同じ数字があることも考えないといかん...…