/ 最近 .rdf 追記 設定 本棚

log[2022-03-14]



20220314() 続いている Excel 日記 (202003252021112020220211)Excel でできなかったことトと TSVァイルを結びつけて1ボタンで最新の TSV がシトに反映されるようになっている(自動更新は気に入らない)この時点ではただ「範囲であるシトをテーブル化して便利に使いたいのだけどーブル化すると TSV との接続を削除されてしまう二者択一ーブル機能っていうのは静的な死んだデータに対してしか利用できない機能なの薄々察しつつあるのだけどExcel の花形は方眼紙や注釈や色分けなどのプレゼンテーション方面(どうでもいい!)であってお賢い機能はまだ見ぬ Access にこそあるの目の前にあるのより新しい Excel にはリンクテーブルという名前の機能があると知ってっぱりできるはずだよねーと思ったし[テキト ファイル ] が見つからない / 起動できないとき|クリエアナブキのちょこテクという記事を読むとテキトファイルドに代わる新し「テキト または CSV からというコマドにも見込みがありそうなんだけど(旧機能が単発のインポト機能であるのに対して新機能は継続的な接続機能であるように見える)Excel くんよ進化の方向は正しいと思うんだけど君はまだ発展途上だったのかい2000 年あたりにはもう完成していたぐらいの期待を持っていたのだけど■次なるキーワMicrosoft QueryODBCExcel のバージョンが古いからキーワドも古めかしいといって以前から知っていたわけではなくてこれから試すんだけど


20220313() [AtCoder] 昨日あった ABC243特に書くことはないかなE 問題までータイムで実装に取りかかれたけど結果は ABCD の4完E 問題は? 300 の3乗のワーシャルフロド法が無しだと思って迷走して TLE で終わってしまったE 問題>提出 #30084536 (AC / 1281 ms)辺のコトが2点間距離より大きい場合と等しいけど代替経路がある場合に取り除ける代替経路は中継地点の存在によって見つかるあとから中継地点を探索しても計算量は変わらないけどーシャルフロド法のついでにメモしておくとちっとは速いかなと思いましたその他にはスタト地点までの距離を 0 にしないで初期値のままにしておくと中継地点の探索が楽になるとか(中継地点が端点のどちらかと一致する場合を除外しないで済む)初期値を無限大ではなく nil にしておいて nil を検出したらループをさっさと抜けるとかそういう小手先 Tips実装量からいっても水 diff 下位だと思ったけどギリギリ青 diffったもよう意外■次のステップはこういう回で F 問題に時間を残して通せないと来ないんだよ今回の F 問題は解答の提出フーマトがすでに謎なんだけどもE 問題Numo::NArray でワーシャル–フロド法の多重ループを記述削減 - QiitaE 問題の考察がータイムだったのって 第七回 PASTK急ぎ旅を解いていたからかもしれない>20210721p01.11最短経路はどの2点間を取り出しても最短だし最短経路同士はどの2本も分岐と合流を繰り返しながら平行して走っているってやつ


20220306() [AtCoder] 精進昨日あった ABC242-FBlack and White Rooks( diff)求めるものは読めばすぐわかる盤面の行と列を白と黒(と中立)で分け合う場合の数ただ白でも黒でもいいのだけど片方の色が何行何列を占めている場合の数が求めにくいーに配置すると想定より少ない行少ない列の範囲内に収まってしまう。本城裕二参考問題を知っているABC003-DAtCoder社の冬( diff)これを4か月前に解いていた>20211222求める場合の数が一筋縄で求まらないことがわかったならDP で漸進的に求めていく方針も立てやすい提出 #29926956 (AC / 537 Byte / 715 ms)っこう制約が優しくてープ内で愚直にスキャンして掛けて足し合わせても間に合いそうではある一応簡単にまとめられる掛け算はまとめたけども見直していたらまとめ忘れてるところを見つけたけども□他の提出を見て書くのだけどぼかしても Ruby に限るとそれは1つしか存在しないのだけどDP を白と黒の2回やると TLE になるみたい1回でいい理由は白か黒の片方がきっちり XY 列を占めている場合の数が求まったなら他方の色は N-XM-Y 列の範囲にテーに散らしていいのでそれはただのコンビネーション1つで求まる□あと実は同じ DP だと思っていたのだけど式が違っていた自分は包除原理の足したり引いたりを理解していないのである色を XY 列にテーに配置する場合の数からX 未満の行Y 未満の列に収まってしまう場合の数を引いてXY 列をきっちり占める場合の数としているXY を徐々に増やして過去の計算結果を再利用しながら求めている解説を読んだらこちらが DP としてあちらが包除原理として両方ともが紹介されていた■ところで昨日の結果は? 自分のすべての提出終了3分前に D 問題に滑り込み AC して4完最遅パフォでレトは微減4完だけど6問解けたのでヨシ! 前々回も似たようなことを…3完だけど5問解けたのでヨシ! ABC242D 問題と E 問題が脳みそを絞られるよう「きっつい問題で(3回口に出た)F 問題だけがとっても ABC らしい問題だったDE みたいなのは出し惜しみして ARC にまわしてくれるとゼロ完が回避できて喜びますよABC に出ても嬉しくない


20220228() [AtCoder] 復習(精進と復習の違いは初めて AC したかすでに AC していたかということにしてる)20220226に関連して ABC217-DCutting WoodsABC241-DSequence Queryの2問■一切の猶予なしに左右のバラスを常にとる二分木を配列に詰め込んだものは二分探索のために予め並べ替えただけのソト済み配列なのではないか性質はそれと同じか実装を頑張った分だけ遅いだろう二分ヒープがテーにつっこんだ数列からソト列を効率良く取り出せるのは内部構造の制約がほどよく緩いからだろうゃあちっとルーズにするとある程度幅を持った固定長のソト済み配列が入れ子になったものになるのかなそれって (a,b)-って名前がついてるもののことかなっていうのが 20200930p01 の内容Cutting Woods提出 #29779137 (AC / 1551 Byte / 578 ms)Sequence Query提出 #29779230 (AC / 1523 Byte / 865 ms)どちらも 30 から 60 の範囲に長さを制限したソト済み配列を入れ子にした構造を共通に利用していて1.5 KB のほとんどがそれ問題に固有の部分はどちらも 10 行前後次はこれを貼り付けようでもまだ必要なかったから削除操作はないよSequence QueryRubyAC してる提出を見てみると色々あるBIT/ST を使ったもの>#29681469#29688407#29763276LazySort というどうして速くなるのかよくわかんないアイデアを使ったもの>#29722776色々っていうか今のところ AC はこれだBIT を使った解法はコンテト中に一番に考えたんだよね。20220111の日記から PAST Deadnamesに提出したソースコドを探してきて貼り付けたでも WATLERE と散々の結果だったので(#29703047)見切りをつけて別の方向に行ったのだった(2,3)-木でやろうとしているお仲間がいた>#29773657 (WA/TLE)図書カドにいつも見つける名前のようアルゴリズムと数学 演習問題集の提出欄に常に先んじて名前が残っている人だよね完成させてほしい□ていうか完成してるよね? Cutting Woods のテトケースはすべて通ったSequence Query のサンプルは que2 メソドの (k-1).timesk.times にすると合うようになる(search メソドの仕様が適切にコメトしてあるからすぐわかる)あとは速度だそれも 2182 ms であって 22xx ms とは違うから 182 ms 削るだ■テトケースが利用できる Cutting Woods でソト済み配列の分割パラメータである A,B30,60 から何パターンか変えて実行してみるとほとんど傾向は変わらないんだけどやっぱり 2,3 くらい極端だとちっと遅いRuby で実装してるから動的配列でありオブジトであるドを細かく分けると空間コトも操作コトも無駄に大きくなりがちスクリトはできるだけ多くの処理をインタープリタに任せる方が性能が出やすいと思うもちろんインタープリタもアルゴリズムのオーダーには従うから構造を工夫しているところではありその範囲内でのことだけど(全部を1つの Array につっこむ無茶をインタープリタに任せるとは言わない)■めでたい。提出 #29810599 (AC /2-3(高速化した第2仕様も変わっているので注))


20220227() [AtCoder] 今日は ARC136 の日Writer を見ればゼロ完も覚悟するんだよなあ幸いにも A 問題でおもてなしを受けましたB 問題からはお察し(脳みその程度を察してください)


20220226() [AtCoder] 今日は ABC241(Sponsored by Panasonic)があった結果は ABC の3完40 分考えて DSequence Queryが解けなかった途中から EPutting Candiesに浮気してそちらは 20 分で解けたけどコンテトは終了していた>提出 #29711639 (AC)これは ABC175-DMoving Pieceと同じ問題だった(どちらかといえば易しいくらい)そのまま FSkateにとりかかって 25 分で解けたけどコンテトは終了していた>提出 #29714203 (AC)これはやるだけの問題だった3完だけど5問解けたのでヨシ!D 問題>提出 #29718230 (AC / C++)C++ だと multisetlower_bound/upper_bound が使えますかというだけの問題になるんだけどRuby で通してる人がいる以上 C++ は甘えなんだよなあTwitter で読んだけど ABC217-DCutting WoodsRuby でまじめに解いた人は対策ができていたらしい自分はテトケースの悪意を読んだヒーリスクスで Array だけを使って通したので対策はなかった>提出 #26804547CConnect 6も実は遅い言語には厳しい制約で盤面の大きさ 100 万に対して係数が 24(=6×4)3 秒でもさすがに通らないだろうと思われた縦と横だけテーに高速化するのに 45 分かけて WA も一度出しているあたりがんばりましょうという感じ>提出 #29690673 (AC / 2088 ms)E 問題と F 問題の軽さに対して C 問題が重く D 問題が重すぎたどんな本でもはじがきと目次と1章から順番に読む以外の発想を持たない人間のことを考えて問題列を構成してほしいものだ(わがまま)■さっき書いたTwitter で読んだけど ABC217-DCutting WoodsRuby でまじめに解いた人は対策ができていたらしい自分は()なかった 嘘だった別解として BITージョンを通していた>提出 #28790707 (AC)「対策とは値から添字を逆引きする BIT のあまり一般的ではないメソドのことでありこれを通したのがちょうどひと月前だってのにどうして今日通せなかったの?@2022-03-01 20220228(30,60)-木を使って通したあとだけどコンテト中の最初の方針であった BIT を使っても D 問題を通したよ>提出 #29790983 (AC / 1944 ms / 後註)Hashースの BIT でギリギリ間に合ってるのに最初の提出(Arrayースの BIT を使っていて有利)RE/WA/TLE になったのなんでだろうともあれWA の原因は BIT の使い方に間違いがあったからなんだけど貼り付けた自分のコドが信用できなくてサンプルを合わせるときに手を入れる場所を間違えたんだなRE/WA だけならデバッグをがんばれたけど TLE もあったので諦めてしまった()っきの提出のコメトに嘘があったアクセス可能な範囲(0..@n-1)ならの正しい範囲は 0..@n-2スクリトは合ってるコメトだけ嘘


20220225() [AtCoder] 「すべての提出ージの仕様が微妙に変わっていてセミコロン区切りのパラメータが受け付けられなくなってるックマークレトを修正したURLHTML(CDATA にしていない SCRIPT タグの中も)に埋め込んだときに &&amp; に置き換えるのが煩わしいから(そもそも忘れていませんか?)最初はセミコロンを使うんだけど使えないことはまあまあわりと珍しくない程度にあるフレームワークが必ずしもお手本を実装していないHTTP query stringで検索したら標準はないとあちこちに書いてあるその中で英語版の WikipediaQuery_string#Web_formsからThe series of pairs is separated by the ampersand, "&" (or semicolon, ";" for URLs embedded in HTML and not generated by a <form>...</form>. See below).This convention is a W3C recommendation.[6] W3C recommends that all web servers support semicolon separators in addition to ampersand separators[9] to allow application/x-www-form-urlencoded query strings in URLs within HTML documents without having to entity escape ampersands. W3Cってところが今となってはかなあもちろん立場が違えばセミコロンが解釈できなくて話が通じない相手とはそれまでっていうのが自分のスタスなんだけどAtCoder には合わせるしかない@2022-03-07 最近 OpenBD のデータが抜けているというより常に取得できてないなと気がついて見たらセミコロン区切りのせいでクエリが失敗するようになっていたここでもなの


20220223() [AtCoder] 精進。ABC010-D浮気予防( diff)ABC239-GBuilder Takahashiを解こうとして思い出したのが考えても解けていなかったこの問題浮気予防を解くために浮気予防の解説を読むのは癪だけどBuilder Takahashi を解くために浮気予防の解説を読むのは許されるような風潮があるとは思いませんか(そもそも禁じられていない)読んだら最小カトだって聞いたことだけはある蟻本を開いたらちょうどのページにしおりが挟んであったTODO ということでありまだ理解できていないということ190ージのプログラムを Ruby に翻訳しただけ>提出 #29610100 (AC / 366 Byte / 89 ms)ースコドを見れば一目瞭然だけど高橋くんのギルは疑いようがない本命の Builder Takahashi はわかりません


20220222() [Xperia 10] 購入前に悩んでいた(20190511)携帯手段について書いていなかった端末と同時に買ったガラスルムとプラスチックケースを付けて布日本製 スマホケース 帆布 手作り スマトフォン用ポーチ iPhone6/Samsung マルチケース Lサイズ (インゴブル)に入れたものを前ポケトに突っ込んでるカラビナにベトを通してXperia 10 は長いからどうしても片方の角がポケトから出るしたとえトイレでズボンを下ろしてしゃがんだ時にはポケトの天地が逆向きになって落下しそうになってるんだけどボタンがあるので安心位置的に車から降りようとして振り向くような動きをするときに角が削れそうになるのだけは注意かなプラケースと筐体の左下隅が 1 mm ほど欠けてる帆布製のケースは内寸が 16 cm 強でXperia 1016 cm 弱だからあつらえたように 5 mm ほど余裕を残して収まって無駄も不足もないスナップボタンの裏側は裏地に隠れていて傷を付ける心配がないっとも画面の側が太ももに向くように(そして逆立ちするように)しまうんだけどこの布袋を見つけたから今 Xperia が持ち歩けている携帯できない電話ならいらねーんだこれは今の Xperia の大きさや比率に不満があるということではなくてむしろ電話らしいフォルムを保っていることが重要なファクターだった人間の耳と口の位置は決まっているわけなので短さや小ささが必ずしも正義ではないスラド式(20071026p01)や折りたたみ式でないことが残念ではあるけどそれだって画面の広さや薄さトレドオフとして差し出して得られるものなので懐古趣味の無い物ねだりではある


20220221() [AtCoder] 復習おとといのだけど前々回の ABCデンソークリエトプログラミングコンテ2022AtCoder Beginner Contest 239-FConstruct Highway( diff)頂点数と辺の数から木であることを読み取り十分に利用しなければいけないコンテト中唯一の提出は終了3分前のこれ>提出 #29471962 (WA×18 / AC×11)木である条件が十分に詰められていなかったし効率にも配慮できていない(ープ中の find メソ)■数時間後の提出 #29479636 (TLE×7 / AC×22)効率にも配慮したつもりだったけど当然起こりうる状況が想定できていなくて24 行目の flat_map が予想外に非効率で TLE単要素の配列が信じられないくらい大量に作られることになる■さらに2時間後の提出 #29483013 (AC)この問題のキーであるあと1本だけ辺が欲しい連結成分を特別扱いすることで効率を改善して ACおまけにソトもなくなったところで不可(-1)を出力して終了する no! メソドの呼び出しが8か所もあるって多すぎだよね■今日の提出 #29561496 (AC)no! の数を5個に厳選してそれぞれに理由を示すコメトを付けた保険のための余分な no! はもうないと思うっと減らしたかったけど 22 行目の no! if U[a,b]no! を取り除くとダメになるケース(8 43 3 3 1 1 1 1 11 21 32 37 8)があるこの提出 #29483417 (WA×1) を阻んでいる random_21.txt が同等の(無駄な辺と森化による辺の必要数の減少が相殺する)ースだと思うESubtree K-th Max最近似た名前の問題がありましたね>Prefix K-th Max一読して表現の微妙な変化に気がついたんですよABC234K 番目に大きい値という表現だったものが ABC239大きい方から Ki​ 番目の値になっていたそれ中途半端な値は見ようによって大きい値でもあるし小さい値でもある自分に言わせればそれは単「大きい方から K 番目の値なんであって大きい値でも小さい値でもないをうけての変化だとは思わないけど自分が理解しやすい表現になっていたのは間違いないそれなのに AC 前の5分で 2 WA しました(WAWAAC)読んで表現の変化にも気がついてでも結局間違えるんだ手癖で書いてるってことなんだろうなあAtCoderの公式生放「あーだこーだ51- YouTubeを聞いていると ESubtree K-th Maxに関連して Wavelet Matrix の単語が何度も聞こえてきたE 問題では K の上限が意図的に小さく抑えられていてここを突破口にして解けよというヒトがあからさまだったけどさもなければ Wavelet Matrix を使って解くことになったらしいCrystal では通ってるぽいのに RubyTLE になるの悔しいよねってほしい参考図[単行] 岡野原 大輔【高速文字列解析の世界――データ圧縮・全文検索・テキトマイニング (確率と情報の科学)】 岩波書店は持ってるだけは持ってるWEB+DB PRESS vol.42 の記事を読んで著者の名前を覚えていた


20220220() [AtCoder] 今日は ABC240 があった見たことのある問題が多かったかな(万年 ABC rated だからだよ)CJumping Takahashiアルゴリズムと数学 演習問題集96CookingABC204-D と同じ問題ですでに ABC で解いていたけどそのときの解法が思い出せなかったのでビト演算で解き直していた>提出 #29359695 (AC)それが4日前今日の提出もビト演算で>提出 #29519763 (AC)気がついたけどほんのちっと前の ABC-DABC-C として出たってことなのねDStrange Ballsぷよだと思ったけど連鎖がなくてちっと物足りない必要な情報をメモしてシミュレトするだけ>提出 #29524639 (AC)ERanges on Tree問題文が難しい3割くらい理解を投げ出しかかっていたけど途中でもうオイラーツアーが見えていたのでそれをガドにして(予想がついている内容が外れていないことだけを確認して)読み通すことができた昨日の FConstruct Highwayがコンテト終了後とはいえ解けていて気力が充実しているのでなければ危なかった適当なタイミングで数字をインクリメトするだけ>提出 #29531766 (AC)こういう問題をもっぱらスタックを陽に持ったループで解くのは 20 万回の再帰呼び出しがローカルではスタックオーバーフローを起こしてデバッグも答え合わせもできなくなるからトで読んだ方法が効かないのはなんでなの?FSum Sum Max加速度と速度と距離それは3か月前に解いたこARC077-Eguruguru( diff)それほど難しくはないかなABC-D+α という感じプラスアルファで悉くつまずいて AC に辿り着けないのが自分ではある()時間軸に沿って加速度と加速度の累積としての速度と速度の累積としての移動距離を記録して答えにする極大値が見えていなかったりとりあえず代入しておいた初期値を答えにしてしまったり逆に開始点を答えの候補から漏らしてしまったり答えを合わせるのに大変苦労したプラスアルファで悉くつまずいて AC に辿り着けない区間の左右端と節約回数の上下端が off-by-one エラーを誘発しやすい感じ(ドツボにはまった経験から書いていま)を今日も再現しておかしくはなかった早々に愚直解とランダム入力を組み合わせてダメケースの発見に努めることができたのが運命の分かれ目終了3分前の提出 #29545375 (AC)これ水 diff なんだって全く同じではないにしてもかつての黄 diff が形無しですよ


20220219() ーわからんがunsigned2数の平均だったら2で割ったものを足すだけでいいんじゃないの? 1ト分誤差が入るからダメって? / Twitter■これ文脈が二分探索なのでは統計処理ではなくて整数型なのには意味があるトピックが定期的に取り上げられるのはオーバーフローが原因となって言語(ライブラリ)が修正される事例がある上に知らなければ最初に書いてしまう式だからだと思う誰もが通る道1ビトの誤差について仮に二分探索で左が 3 で右が 5 のときピボトが 3/2+5/2 == 3 になってしまうと 4 がテトされる前に探索が終了してしまうそれは誤り2数が1の場合でも UINT_MAX の場合でも誤差が1な1ト分誤差が入るからダメって?に対するツッコミにならないのでは?という疑問にはそれはそうと思う誤差が大きすぎるという納得はわからない


20220218() 3000ミリ秒近くかかっている なお Perl で同じコドを実行してみたところ5ミリ秒で終わった Ruby では 22 (ミリ秒ではない!かかった 正規表現の実装がぜんぜん違いそうである / Twitter■へたしかに Ruby だと 30 秒くらいかかるよくある *+ を入れ子にしてバトラックが~というのではなく単純にマッチ開始位置とマッチ失敗までのスキャンとがともに入力に比例する N^2 時間かかってる雰囲気ッチテト開始位置をずらしたとき「おやここはもう通った道だと気が付ければいいんだろう文字列内の位置とエンジンの内部状態が一致するならすでに出ている結論を流用できる的なー言ってるけどもシチュエーションを限定しないとどんだけコトがかかるか想像できないけども正規表現の脆弱性 (ReDoS)JavaScript で学ぶ