にぼしの日記

だらだらと

AtCoder にぼしの解いた問題たち(随時更新)

AtCoder 解いた問題一覧

他記事へのリンク

更新情報

2020/05/28 一ヶ月ぶりに更新した(追加されたのはたった1問)

前書き

AtCoderで解いていった問題の解き方(簡易版)をまとめていく この問題、あの問題みたいにやれば解けそう!!って時にココ見れば分かる。って感じにしたい。

あくまで自分用ですが、アドバイス等は遠慮なくもらえると嬉しいです。

リンク切れ等ございましたらご報告ください!!! コードは特に記述のない限りc++14(GCC5.4.1)です

使い方

"Ctrl + f" で検索窓を開いて、「DP」みたいな感じで検索してね。
問題名で検索することも可能です。

構成

  • 解いた問題のタイトル
    • 一言コメント

ABC

ABCのB問題のいくつかを埋めたときの記録 ここには, ABC001 / ABC003 / ABC006 / ABC009 / ABC010 / ABC011 / ABC012 / ABC013 / ABC014 / ABC018 / ABC020 / ABC021 / ABC022 / ABC024 / ABC025 / ABC027 / ABC028 / ABC033 / ABC035 / ABC036 / ABC037 / ABC038 / ABC040 / が入っています。

abc042B - 文字列大好きいろはちゃんイージー / Iroha Loves Strings (ABC Edition)

問題 記事

vectorに入れてソートする問題

abc043B バイナリハックイージー / Unhappy Hacking (ABC Edit)

問題

記事

string 文字列に対しても、pop_back()という関数を用いることが出来る ちなみにこれ、空の文字列に対して行ったらどうなるんだろうね!!(気になる)

abc047 一次元リバーシ / 1D Reversi

問題

記事

同じ文字のまとまりを1つの区画として、何区画あるか数え上げる 特別なことはしていない

abc51c Back and forth**

問題

記事

abc056 Go Home

問題

記事

ちょっとずつ動ける範囲が広くなる 負の方向に跳ねるのは無駄だ

abc058 Dubious Document / 怪文書

問題

記事

その文字が何回出てきたかを数える 英小文字と数字を対応させる。 mapでも解けそう

abc061C Big Array

問題

記事

制約が緩いので配列サイズNで、配列の要素番号と値を対応させて間に合う問題。

abc067 Splitting Pile

問題

記事

整数列が与えられて、前から値を足していったとき、その整数列の総和の半分に値を近づける。

abc073C Write and Erase

問題

記事

出てくる回数が奇数か偶数かを見るだけ mapを使った

abc088C Takahashi`s Information

問題

記事

数学チックな問題 連立方程式を使うのかな

abc110C String Transformation (niboshi time 35m)

問題

記事

難しかった。 サンプルを見て頭を回せ。 全ての出現する文字に対して、対応するものは1個だけじゃないといけない 解説動画で感動するが、これは悩んだものに与えられる特権

abc094D Binomial Coefficients

問題

記事

直感的にやったらACしてしまった問題。 二項係数に関する問題、証明がなかなか面白い(?)ので公式解説を見るのをお勧めする。

abc110D Factorization

問題

記事

解けてうれしくなれた。 良い記事を書いたよ。 数え上げの問題。逆元も使う。(逆元の解説はない)

abc116 Grand Garden

問題

記事

操作をする系問題(おおざっぱかよ) 左からどんどん花を完成させていくっていう方針で大体いいと思う。

abc128c Switches

問題

記事

bit全探索 bit全探索の初級と言われればそうかもしれないが、bit全探索初心者にとっては結構難しい 僕にとっても難しい。

abc131 Megalomania

問題

記事

Yes,No問題、締め切りが近い順にやっていけばいい 証明は分からないけど直感がそう言ってる とか言って証明はURL飛べばある(あるよ)

abc146

問題

記事 (記事はD問題まで書きました) 二冠 二分探索何もわかってなかった。 ABC回の参加の方針が少し経った気がする

ARC

arc059 いっしょ / Be Together (メンヘラ)

問題

記事 全探索(簡単)

ARC068C - X: Yet Another Die Game

問題

記事 計算量1の問題 記念すべき400AC目 最適な操作方法に気付けるか

arc069 Scc Puzzle

問題

記事

ARC073c Sento

問題

記事 押すとT秒水が流れるボタンをたくさんの人が止まってからや止まる前に押したとき、合計で何秒流れるかの問題 ・水が流れ始めてから次に押す人が何秒後に押すかに着目 難しい文法はない

arc091c Flip,Flip,and Flip

問題

記事

計算量が1の問題 表になるものを数える もしくは裏になるものを数える 自身を含めて周りにマスが偶数個あれば操作が偶数回で表 奇数個なら裏。

AGC

agc002 Box and Boal

問題

記事

割と面白い問題、AGCだけど古い問題なのでdifficultyほどの難しさはない印象。 実装系だと思う 入力で与えられる添え字-1 が配列で見たいところっていうのに気づかずちょっと手間がかかった。

agc006 Prefix and Suffix

問題

記事

substrを使うと綺麗かな 二つの文字列 S , Tに対して Sの後ろ側と Tの前側で一致する文字列の長さの最大値が答えに関連する

agc011 Airport Bus

問題

記事

sortして、到着するのが早い人からどんどん処理をしていく。 難しい構文は使っていない。

agc013 Sorted Arrays

問題

記事

実装が難しい問題(?) 数列が与えられて、期待する数列に分けるにはどうしたらいいか?みたいな

agc015A A+...+B Problem

問題

記事

考察の問題 計算量1の問題 和を最大値と最小値まで、任意の値にすることが出来る(できるので)

agc015B Evilator

問題

記事 難しいことはしていない どの階にも1回か2回押せばいける。

agc022 Diverse Word

問題

記事 解説通りには解けていないが嘘解法ではないはず。 辞書順なのでnextpermutationを使った 文字列の長さがアルファベットの数と同じ26であるときの考えが難しい next_permutationは自分で実装すると案外難しいのでやってみると面白い(らしい)いつかやってみよう

agc031A

問題

記事 難しい文法は使ってないけど難しい問題 文字列が与えられて考えられる文字列?が何通りあるか数える abcd ⇒ a , b , c, d, ab, ac, ad , bc,bd,cdk, abc, abd ,acd, bcd , abcd で15通り みたいなやつ

agc032A Limited Insertion

問題

記事 vectorの要素の削除を初めて使った。 くそ難しい問題なので、何か新しく理解出来たら追加で何かをかきたい

日ごとのまとめ

12月4日

ABC028c - 数を三つ選ぶマン

ABC136d - Gathering Children

これらは article,12月4日 の中にまとめてぶち込んでます

12月5日

技術室億プログラミングコンテスト#4 Day1 a- ヘビがヘビー

技術室億プログラミングコンテスト#4 Day1 B- Long Long Ago

ABC142 E-Get Everything

三つの記事について書いたの記事はこちら~にぼしの記事

Get Everything は写経AC。集合を二進数で扱うbitDP、配るDP。どの鍵を使うかで全探索はできないが、 箱が開いているか開いてないかの状況で全探索はできる。 一つ前の状況から、カギを使うことであらわされる二進数表記の状態を考える

面白い問題!!(写経ACだけど)

abc064 D - Insertion 難しい

文字列操作系の問題(苦手)

どこに挿入するかがポイント?

12月6日

diverta 2019 Programming Contest C- AB substrings

12月6日の分の記事はこちら

diverta C-AB substrings 悪くない問題

文字列操作系の問題 簡単か難しいって言われたよくわからないけど 慣れてはや解き出来るようになろうねって感じ

12月8日
  • 解いた問題 ABC010C-浮気調査

ARC029 A-高橋くんとお肉

C - Digits in Multiplication

12月8日の分の記事はこちら

浮気と調査

距離を求めるときは doubleを使おうね

高橋くんとお肉 bit 全探索

最近はbit全探索の問題をよく見かけるようになってきた。 やはり同じぐらのでぃフィカルティには同じ位の難易度の問題が集まるのだろうか?

12月9日
  • 解いた問題 C - Dubious Document 2

ABC076C - Dubious Document 2 [substr,部分文字列、貪欲、辞書順最小] '?'は'a'にしたほうが辞書順最小になる 最低でもtを一つ部分文字列に含んでいればいいので,tとして考えられる場所が複数ある場合は、 できるだけ後ろのほうが良い。 (前が'a'になっていた方が辞書順で早いので

ABC041C - 背の順

ABC029 C- Brute-force Attack [next_permutation] next_permutationの手動実装みたいなノリ

ARC016 B- 音楽ゲーム

AGC005 A- STring 難しめ

ABC147 C -HonestOrUnkind2 ビット全探索!!

ABC108 C- Trianglular Relationship 写経AC

ABC033 C- 数式の書き換え

CODE FESTIVAL 2016 qual C B-K Cakes ちょっとだけ頭を使う

AGC011 B - Colorful Creatures 楽しい

12月9日の記事はこちら

Dubious Document、 substrを使う問題

substrが使えそうって思ったとき、使い慣れてないせいで別解法に逃げがち(WA出した) おとなしくsubstr使えるようになろうね

12月10日
  • 解いた問題一覧 ABC127 D- Integer Cards

ABC085 D- Katana Thrower 上二問は似ているぞ。

Tenka1 Programmer Beginner Contest 2019

D - Rain Flows into Dams

ABC114 C-755 写経AC

12月10日の記事はこちら

12月11日
  • 解いた問題
  • ABC069 C- 4- adjacent
  • ARC003 B-さかさま辞書
  • ABC134 D- Preparing Boxes 多分これが一番おもしろかった 後ろから球を入れてくのがいい 12月11日の記事はこちら
12月12日
  • 解いた問題
  • ABC112 D-Partition [最大公約数,天才考察,]

12月12日の記事 全然やってない;;

12月14日
  • 解いた問題
  • ARC054 A- 動く歩道 次の問題に比べればかんたんな条件分岐
  • ARC051 A- 塗り絵 勘弁してくれ。図形の問題。直線と円 なんかかっこいい解き方あるのかね

12月14日の記事

12月15日
  • 解いた問題
  • diverta 2019 Programming Contest 2 B-Picking Up マップのキーはペアでもいいよって言う

12月15日の記事

12月16日
  • 解いた問題
  • ARC043 A-点数変換

REが出ないせいでやられた。少数嫌い 12月16日の記事

 いつ解いたか分からないやつ

ARC007迷子のCDケース

[MAP] なんかうまく行かない。 n個のCDに対して n-1個のCDケースと1個のカセット。 CDケースの番号とCDの番号を対応付けて、カセットをCDケース0。 disk0 ~ disk m-1 に対して、以下のような操作を行う

disk[i] = k ,現在流れている曲を p とすると kが入っているケースにpを入れ,pが入っているケース(つまりカセット)にkを入れる

ポイントは,kが入っているケースを見つけるために線形探索を行わなければいけないってこと cd[i] にはi番目のケースに入っているCDの番号を入れる。(0 <= i <= n)

ABC079 D-Wall

[ワーシャルフロイド法] https://atcoder.jp/contests/abc079/tasks/abc079_d 頂点間を結ぶ最短距離(経路を求める) 書き方は考えるのちょっときついから覚えちゃったほうが良いらしい. 計算量は頂点の数の3乗 rep(k,v){ rep(i,v){ rep(j,v){ dist[i][j] = min(dist[i][j] , dist[i][k] + dist[k][j]); } } }

Caddi2018 D- Harlequin

ゲームの必勝法。なるほど面白い。 全部偶数で自分の手番が始まりさえすれば、相手の動きを真似することで、コマが全部なくなるのは自分のターンにできる。 なるほどな

2020/01/27

1月入ってからずっと書くのサボってました ぼちぼちやろうね。

ABC153 E-Crested Ibis VS Monster

[DP Dynamic Proggramming, 動的計画法] DPっぽいよなあ。って問題。 解説動画によると、二次元DPでも一次元DPでも行けるとのこと。 とりあえず頑張って二次元で書けと言われたので書いた。 提出コード こーどの コレがないと 死ぬ ってやつを忘れるとWAです。 dp[i][j] := i番目までの魔法でjのダメージ(以上)を与えるときの最小のMP消費量。なので if (j == 0 ) では、0ダメージ以上なので魔法を使わなくて良いんだよ。

動的計画法,dpはdp[i][j] := hoge って定義考えるとちょっと見通しが良くなる気がする。 あと、これのコードの記事も書きました

ABC152 D - Handstand 2

[数え上げ, MAP,回文] 数字の上位と下位の数字(100433543 なら上位は1 下位は3)を見て、与えられた範囲内で下位で始まり上位で始まるものが何個あるかを数える問題 (カッコ内の例の場合は 31 ,331, 311…みたいなものの数を数える) 雑に言うと、1回目のループで1からnまでの数字について、それぞれが何で始まり(上位がなにで)何で終わるか(下位が何か)を全部作っていく。 そして、2回目のループで、1からnまでの数字について,aで始まりbで終わるなら、bで始まりaで終わるものの数を数えていく。

提出こーど ABC 152 D - Handstand2

 2月1日 貪欲消化回〜〜〜

[貪欲,greedy] にぼしくん,蟻本をやろうということで、某ちょんさんが蟻本の問題をAtCoderの問題に対応付けてくれているので、それを消化していきます!! ところで貪欲法って使えることの証明が大事だと思うんですよね。分かる?人間の諸君

ABC083 C-Multiple Gift

[貪欲] Xから2倍、その値を2倍ってやっていくのが最適な貪欲ですよね〜〜(証明貪欲)

証明しないとまずいな、ってことで、公式の解説に証明載っていたので写経しました。 画像を直接貼るのめんどくさいのでTwitterのリンクにします C-Multiple Gift 証明

ARC006 C-積み重ね

[貪欲] 最初これ、入力与えられてきている順番にダンボールを積まないといけないっていうところに気が付きませんでした。

普通に思い順に1山にしたらよくない?って思ってしまいましたね。 これまた証明が思い浮かばない… そしてまた、感覚でも納得できないですね。

っていうことで解説読んで証明を理解してきましょう。

積み重ねの証明写経

まあ、偉そうに写経なんて載せてますけど公式の解説写経です。これが一番しっくり北

ABC005 C- おいしいたこ焼きの売り方

[貪欲,二部グラフの最大マッチング] (↑ タグはつけてますけど、貪欲以外では解いていないです。) なんとなく、証明以外の部分はちゃんとルールを決めて解こうと考察できたと思う 考察用紙貼っておきます。

どんな貪欲か,以下のルールでタコ焼きを売り続けます 1. B[0]から、B[m-1](m人の客)について、売れるたこ焼きがある時は、可能な限り古いたこ焼きを提供する。

あいも変わらず、証明はできないので、公式の解説を写経してみる。 写経してみた

2020/02/02

ABC103 D-Islands War [区間スケジューリング,貪欲,greedy,] 難しいですね。 お得に橋を切ることを考えているのですが、言語化ができなくて苦労している問題。 自力で解けたんだけど、なんか上手い解説は浮かばない。 公式の解説を見ようね

2020/02/03

ABC132 D- Blue and Red Balls

[コンビネーション、組み合わせ数え上げ、mod、nCm,DP,動的計画法パスカルの三角形] nCmは普段良くわからない方法で求めてるけど、解説どおりパスカルの三角形で実装してみた。 多分これあらがありまくる。 あらがありすぎて新垣ゆいになりそうなレベル。

2020/02/19

この日の記事

ABC126 D-Even Relation

[グラフ、二部グラフ、DFS]

隣の頂点との距離が偶数か奇数か グラフの問題で易しめのやつ(むずい)

2020/02/20

この日の記事

ABC150 D- Semi Common Multiple

[最小公倍数、式変形]

本番通せなくて(c++わい、敗北)、Python勢がオーバーフロー?w知らんけどwwwwww みたい感じになって俺がブチ切れたやつ。

2020/02/21

この日の記事

ABC067 D- Fennec VS. Snuke

[ゲーム、幅優先探索,queue,キュー,BFS,グラフ]

最適に動いたときどっちが勝つかってやつ。

第7回二本情報オリンピック予選(オンライン)

[ダイクストラ,クエリが与えられるタイプ,dijkstra,グラフ]

辺を追加するという操作か、二頂点間の最短距離を求めろ。っていうクエリが順次与えられる。 ダイクストラはある1点から他の頂点への距離の最短を求めるアルゴリズム

2020/02/22

この日解いた問題の記事

ABC 156 A-Beginner

[if文,日本語] Nが10以上の場合はRを出力, そうでない場合は内部レーティングを計算して出力する。

ABC 156 B-Digits

[K進数,whileループ] 10進数で表された整数Nは、K進数だと何桁で表せるか. ちょっとウッってなりましたけど、殴りました。

ABC 156 C-Rally

[全探索] 簡単. 考えるだけ無駄鳴きがする…(難しいのが出てきたらソノトキ考えよう)

ABC156 E- Roaming

[nCm,操作,組み合わせ、数え上げ、日本語]

本番通せなかった。けど頑張れば解けるような問題。

各部屋にいる人数だけが問題になっていて、中にいる人の違いは考慮しないってことに気が付かなかった。

2020/02/24

この日の記事

ABC104 D-We Love ABC

[動的計画法、数え上げ,mod]

青パフォで少しむずかしめの問題。ABCが何組あるか。みたいな…。 実質写経ACみたいな感じ。

ABC156 D- Bouquet

[mod,nCm,繰り返し二乗法、数え上げ]

可能な花束の作り方は 2n - 1 - nCa - nCb です。

AGC003 B- Simplified mahjong

[貪欲法]

簡単

ABC054 C- One-Stroke Path

[グラフ,無向グラフ,簡単グラフ,全順列]

2020/03/04

この日の記事

ABC157c Guess The Number

[全探索,if文ゴリ,実装ゲー,しんどい]

ABC157d Friend Suggestions

[UnionFind,ユニオンファインド,グラフ理論]
初めてunionfindをつかう問題だと本番で気づき、さらに通すことが出来た(やったね)

2020/03/11

この日の記事
セグ木をやった日です。 AOJなどをやっていたのでここには載せません 嘘です。載せます

AIZU ONLINE JUDGE Range Minimum Query

[SegmentTree,セグ木]
典型セグ木みたいな?

yosupo judge - Point Add Range Sum

[SegmentTree,セグ木]
初のヨスポジャッジからの記事です。 上の典型セグ木のコードを少し変えて頑張って解きました。

2020/03/12

この日野記事

yukicoder Range Mindex Query [Seg-tree,セグ木,RMQ]
RMQのindexを答えてくれという問題です。
この問題を通して得た知見をつらつらと書き連ねていきます。

2020/03/13

この日の記事

ABC052C - Factors of Factorial

[全探索,約数の個数]

2020/03/16

この日の記事

ABC044 C-高橋くんとカード

[DP,3次元DP,動的計画法,水色パフォーマンス]
自力ACして糞盛り上がりました。

提出コード

2020/03/20

この日の記事

ABC038 C-単調増加

[尺取り法]diff試験管900
愚直は通らない。通さない。

ABC115 D-Christmas

[再起関数,ムズカシイ]
むずくね? 写経AC 良うわからん

ABC075 C-Bridge

[橋、連結無向グラフ]
橋の問題です。他人の記事からうばってAC この日の記事にちょっとだけ考察というかお気持ちというかが描いてあるかも

2020/03/21 AGC043の日

この日の記事

ABC075 C-Bridge

[橋、連結無向グラフ]

2020/03/22

この日の記事

ARC005 B- P-CASカードと高橋君

[天才実装ゲー,方向転換の処理]<br>

ABC159 A- The Number of Even

[偶数奇数,parity]
2つの数を足したら偶数になるような2つの数の選び方は、偶数+偶数奇数+奇数ですよ。っていう問題.

ABC159 B - String Palindrome

[Palindrome,回文]
この問題面白くて、実はSが回文で、Sの前半も回文だったら、Sの後半調べなくていいんだよ。すごくね?

ABC159 C- Maximum Volume

[小数を使えますか,体積の最大化]
立方体が一番おっきいの!!

ABC159 D- Banned K

[map,連想配列]

ABC159 E- Dividing Chocolate

[bit全探索,天才実装]
ホワイトチョコレートと普通のチョコレートが混ざった板チョコなんて現実に存在しますか?しません。しません。しないで。

2020/03/24

この日の記事

ABC097 C- K-th Substring

[部分文字列,substr,連想配列,文字列,辞書順]
辞書順でK番目であるということについての考察。 "abcdef"と言う文字列sがあったとき、その末尾(プレフィックス)を取ったもの"abcde"文字列tは、sよりも辞書順で前か後か。どっちでしょうか。

ABC045 C- たくさんの数式

[bit全探索]
みんな大好きbit全探索の問題です。

ABC129 D-Lamp

[最大化,数え上げ的な]

diverta 2019 Programming Contest D- DivRem Number

[整数,約数,商と余り]
何か解けちゃいました。

2020/03/25

この日の記事 Indeedなう(予選B) B- 高橋くんと文字列操作
[文字列,文字列の比較]

2020/03/26

この日の記事 ABC124 D-Handstand
[尺取り法,累積和]

2020/03/27

この日の記事 AGC033 A- Darker and Darker [複数ヶ所からの幅優先探索]
複数ヶ所からの幅優先探索というのは僕がみたときの印象です。 が、やってることは本当に基本の幅優先探索と一緒で、最初queueに突っ込むのを左上(0,0)だけじゃなくて '#'のマスを全部queueに突っ込もうね。っていう考えです。

2020/03/28

この日の記事

ABC160 A-Coffee [文字列,if文]

ABC160 B-Golden Coins [切り捨て,最大化(easy)]
ABC160 C-Traveling Salesman Around Lake [図形(?),最短距離(easy)]
池の周りのセールスマン
ABC160 D-Line++ [連想配列(map),無向グラフ(だけど…),最短距離]
無向グラフとか言われて身構えさせられたけど、辺を受け取る処理も書かなくていいので怯えるな!!って感じな気がした問題
ABC160 E-Red and Green Apples [組み合わせ…?,最大化]

2020/03/29

この日の記事
ABC121 D- XOR World [XOR,周期性,累積和的解法]
実は、kとk+1のXORは1かになる。(ただし、kが偶数のとき)(k = 3とすると3は011,4は100なのでXORは100で4ですね。進数変換は察して)
累積和的解法というのは、BまでのXORからA−1までのXORを引いてあげれば解けるっていうノリです。 僕は、1番目のbitが立っているのが何個あって…っていうのを求めて解きました。くそ汚い解法です.

2020/03/30

この日の記事

CODE FESTIVAL 2015 予選 A

[最適化,最小化]
公式解説PDF
公式のスライド解説って見やすくていいですよね。 - とりあえず全部を写すことにする

2020/03/31

記事に詳しく書いてあるわけじゃないのでこの日のブログのリンクは無し

ABC112 C- Pyramid

[重実装,全探索]
何か解説動画でウンウン言っていましたが,正直良くわからなかった.
解説PDFをみた感じで,一番わかり易い(それが知れたら解ける)のは,h[i] != 0 となるiが存在すること.これがわかれば解けた.

2020/04/01

この日野記事

ABC090 D- Remainder Reminder

[固定,数え上げ]
余りを求める問題は,余りに周期性があることを意識しよう。
つまり,0,1,2,...nをkで割った余りは0,1,...k-1, 0,1,...,k-1, ..., r
というふうに循環し,このときのrはn%kですね(そりゃそう)

2020/04/02

この日のk爺

ABC080 C-Shopping Street

[bit全探索,条件,最大値]
最大値は負にもなりうるので,ans = 0;で初期化するのはダメだよ.

2020/04/03

この日の記事

ABC81 D- Coloring Dominoes

[数え上げ,mod,解説AC]
横ドミノが並んでるときに3倍じゃなくて2倍になると思ってた…
パターンを全通り考えよう!

2020/04/04

この日野記事

ABC161 A- ABC Swap

[特になし]
中身を入れ替えるという操作は2回しかしていないので単純にz,x,yの順に出力するだけですね

ABC161 B- Popular Vote

[割り算]
1WA出しちゃいました(テヘペロ)
楽な実装方針ですと,a[i] * 4 * mが総得票数を上回っているか見たほうが楽そうですね。
総得票数 * (1/4m)とすると,切り上げれば良いのか切り捨てれば良いのか頭がポアになってしまうので,a[i] * 4 * m >= 総得票数をチェックしたほうが良いとおもいます。
もちろん大きい順に(降順)ソートしている前提ですよ。

ABC161 C- Replacing Integer

[数学,パターン]
何かよく分からない雑な考察とif文3つで通してしまいました。解説を読む必要があります。

なるほど,N,Kの大小で考察をすると楽だったのですね。

ABC161 D-Lunlun Number

[BFS]
既にlunlun数だとわかっている物を10倍して(追加できるなら)それ-1, +0, +1 をlunlun数に追加する。 解けた。楽しい。

2020/04/05

ABC105 C- Base -2 Number

この日の記事
[数学,-2進数,進数変換]
解けたけどよく分かってない。
ただ,なんとな〜くだけど,大事な(他の進数のときも意識したほうが良さそうな)ことは,k進数にするときは,kで割った余りがある条件になっていたらk進数のそこのフラグが立つ。で,その次のフラグを見るためには元の数をkで割って見る。って感じにするのが大事なんだと思う。

ABC109 D- Make Them Even

[操作,偶奇,最大化,貪欲法]
偶数と奇数しか見なくていいので,なんとなく右下に寄せていくイメージで行けば良さそう。
どのマスも必ず1回以下の操作をすれば偶数にすることが出来る。
だから,もしも奇数個のコインがあるのであれば右(右にマスがなければ下)に移動サせる。
右下のときだけどこにも移動させれないので偶数にならない可能性がある

2020/04/06

この日の記事

ABC138 D- Ki

[木,Tree,累積,深さ優先探索]
はい,出ましたAfter Contestのテストケースを乗り越えられなかった問題。
ポイントは木の持ち方,DFSのやり方(ってすぬけさんが言ってた)

2020/04/07

この日野記事

CODE FESTIVAL 2017 QUAL A C- Palindromic Matrix

[回文,文字列,手を動かせ]
手を動かしてみるとなんとなく見えてくることがあります。

2020/04/16

この日の記事
ABC162の回です

ABC162 A- Lucky7

[桁の値]

ABC 162 B- FizzBuzz Sum

[全探索,FizzBuzz]
Nの値が106までなので,全部見ればいいっすね。

ABC162 C- Sum of gcd of Tuples(EasY)

[全探索,最大公約数]

ABC162 D- RGB Triplets

[数え上げ,組み合わせ(?),条件]
中々面白い問題ですね。これが速く解けるか解くのに時間がかかるかで蒼perf ~ 緑perfまで変動するみたいです。にゃーん
とりあえず,RGBそれぞれの数を数えてあげましょう。

2020/04/22

この日の記事
ABC163の回です

ABC163 D- Sum of Large Numbers

[数え上げ]
unrated回なので考えずに終わってしまいました。N+1個の数は10100 + i と言う数で表されていて, ある数h個取った時とg個(h!=g)取った時の値は絶対に一緒にならないので,取る数が何個かを全部見てやればよさそうです。

2020/04/27

この日の記事

ABC148 E- Double Factorial

[約数の個数,10進数]

N!!が10を約数に何個持つかっていう問題。
まずはNの階乗の中に何個2や5があるかっていうのを数えてみる。 1,2,3,...N(N個)の中に何個5の倍数があるか,それはN/5個だね。 これら5の倍数のものを全て5で割ると,
1,2,3,...N/5(N/5個)ってなっていく,これらを繰り返すことで,N!が5で何回割れるかっていうのが 求まる。
で,多分それが答え。
ちなみにNが奇数のときは,1,3,5,...,NがN!!で2が含まれることがないので答えは0

ABC148 F- Playing Tag on Tree

[木,鬼ごっこ]
高橋くんの初期位置からの距離(T)と,青木くんの初期位置からの距離(S)のうち,T < S となるようなSのうち最大のもの-1が答え(のはず)
二人の距離が偶数奇数によらず追いかけっ子が終わる場所が同じっていうのが面白いね

ABC158 E- Divisible Substring

[累積和,文字列中の整数,部分文字列,10進数]
15943 = 3 + 40 + 900 + 5000 + 10000 的なノリを10進数は大事にすると良い。
ってかこの問題すげえっすわ・・・

累積和を作ったときに(S) S7 ≡ S3 なら P で割れるだって!?まじか!すごいっす!みたいな。

2020/05/28

この日の記事

ABC106 C- To Infinity

[文字列、大きい数]
これはまああれですね。

あなたは2の5000乗が1018を超えるということに気が付きますか? 

2020/05/29

ABC166 E- This Message Eill Self-Destruct in 5s

この日の日記

[連想配列,式変形]
・2人の持つ番号の差の絶対値が、2人の身長の和に等しい。 そのような(i,j)(i != j) の組を求めよ。という問題 つまり $a[i] + a[j] = |i-j|$ を満たすi,jの組を求める。 組み合わせを数えるから、(i,j)と(j,i)は同じ物として考える。 j > i となるような組だけ求めればいい。 先程の式を変形すると$a[j] + j = i - a[i]$となる。(iとjに着目して左辺と右辺に分ける)

つまり、各jに対して、a[j] + j が i - a[i] となるものを数えてあげればよくて、これを数える為にi < j となるiを全部見ることは愚かなので、連想配列に格納することで、a[j] + j = i - a[i] を満たすiをMAP[a[j] + j] を見るだけで数えられる!(やった〜!)

ABC070 D- Transit Tree Path

[木、DFS,深さ優先探索]
まぁ、深さでも幅優先探索でもどっちでもいいとは思うけど(知らん)

とりあえず求めるのは、Kが固定サれているっていうので、Kから各頂点への距離を最初に全部調べて上げればいい。 (与えられるグラフは木なので、Kから各頂点への距離はただ1つに定まる)

後はQ回のクエリで,1と8が与えられたら、1からKへの距離+Kから8への距離を答えとして出力する。

この問題、最近のABCで出たらdiffはどんなもんだろう…2017年8月の問題で、diffiが1190だけど、今でたら1050ぐらいまで下がるのかな?それとも茶パフォぐらいまで落ちるのかな?

個人的には深さ優先探索は書くのが苦手だから4桁diffあるような気がするけど...

ARC062 / ABC046 D- AtCodeerくんと変なじゃんけん

[貪欲??]
これは何でしょうか…?

TopCodeer君がpを出した後、AtCoDeer君がpかgかをとりあえず考えてみた。 p-gで負けの時、ポイントは-1, その後1点にするためには2回勝たないと行けない… (だからソレがどうした??)みたいなよくわからないことを考えてみた結果、パーを出せるときはパーを出しておけ。みたいな考えになってとりあえず提出してみたラACした。

解説見ました。天才かよ・・・・・・・・・・・・・・・・・・・・・・・!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

一回全部グー出したとして、どこをPに変えるかを考える…すげええ!!!!!!!!!

2020年5月32日 日記

2020年 5月32日

まえがき

コンテストのオーバーフローの問題にムカついたので今日は5月32日です。 5月32日のぶんの記事を公開します。

投稿した後気づいたから付け足すけど、$なんか式$でいい感じにしてくれないのか えー

健康管理

何した

コンテストに出た

具体的に

今日解いた問題

ABC169-A Multiplication 1

[yarudake]

ABC169-B Multiplication 2

[いじめ,オーバーフロー]
…… 1e18を超えた時の判定がむずいので a[0] * a[1] * ... をnowっていう変数にとりあえず入れておく。
$$now * a[i] > 1e18$$ ってことは $ now > 1e18 / a[i] $(式変形)かぁ、って思ってそうしたら行けた。

オーバーフロー嫌い

ABC169-C Multiplication 3

[いじめ,オーバーフロー,小数]
なんか、よくわからないけどbを受け取って (B をDOUBLEで受け取る)$ a * b $ を出力するだけだとエラーになるな ↓ $ a * (b * 100) / 100 $ これでもエラー(は???) b * 100 で壊れるらしい(ふざけるな)

仕方ないのでx.yzで与えられるbを string で受け取りました。
その後 100x + 10y + z としてint型のbを作成して、 $ a * b $ を出力して勝ちました(わけわからん。ふざけるなよ。俺は競プロerであってプログラマーじゃねえぞ。)

ABC169-D Div Game

[素因数]
$ z = pe $ っていうのがミソじゃね。知らんけど。 なんかまぁ、$N = 2 ^ 4 * 3 ^ 2 ( = 144) $ みたいな時, zは2,4,3,の3つが行けて(答えは3) Nは最終的には6 になってるんだけど、この時Nの素因数は2と3、1個ずつ使って6で割る!!!みたいなことは出来ない。
だからまぁ、$ N = a ^ x * b ^ y * c ^ z $みたいな形してるとき、xを1+2+3+...+kって感じで分割するのが良くて…みたいな感じでやってったら行けた。


でまぁ、a っていうのはvector<pair<int,int>> で、.firstに素因数, .secondにその素因数が何個あるかが格納サれてるから…こんな感じでやって…
( N <= 10 ^ 12), 1012って240ぐらいだから 1 + 2 + 3 + 4 + ... + k>= x ってなるkを見つけるループは全然重くない
なんかまぁ、ノリで伝われよ(投げやり)

for(auto x:a) {
        // xはpair型
        ll now = 0 ;
        for(int i = 1; i <= 50; i++){
            if (x.second >= now + i){
                ans ++;
                now += i;
            } else {
                break;
            }
        }
    }

ABC169-E Count Median

[中央値,最大化,最小化]
残り2分ぐらいで通せました(やったね)

なんかまぁ、さ、とりあえず考えることは 中央値として採用される値の範囲を求めろってことジャン(じゃん?)
で、値の数が偶数のときは、 x[n/2] x[n/2 + 1]の2つの値の平均が中央値じゃん…
だから、一回N=奇数の時を片付けよう。 N=奇数のとき
求めるのはx[n/2 + 1]の範囲

で、なんかよくわからないけどx[n/2 + 1]の最小はAをソート(小さい順)したときのA[n/2 + 1]で、最大はBをソートしたときのB[n/2+1]だった。
(もうなんか、なんでか知らないけどそうなったから良いや)

N = 偶数のとき
x[n/2]とx[n/2+1]の最小最大をそれぞれ求める(どうして俺が求められたのかはよくわからない)
でまぁ、 x[n/2]のmin,maxがそれぞれa, b
x[n/2+1]のmin,maxがそれぞれc,d とするじゃん(どうやって求めるのかは知らんけど), {3,5}の中央値って4じゃん
{1,7}の中央値も4じゃん。
これをどうやって同一視させてやるか迷うじゃん。
でまあ、天才にぼしは考えたんだよ。 ,a+c がx[n/2] + x[n/2+1]の最小で b + d がx[n/2] + x[n/2 + 1]の最大じゃん(ホゲーwww)つまり、a+c からb+d が中央値の2倍が取りうる値の範囲なんだよね 笑

ま、分かったふりして何も分かってないんだけどね。

あとがき

また月曜日がやってきたよ。誰も望んでないのに。

まぁ俺は望んでるんだけどね。

以下は毎回記事に貼っているテンプレート

基本的に読書はTwitterで絡みのある人だけだと思いますが、僕のブログだけ見てるって人もいるかもしれないので、一応自己紹介っぽいことをしている記事を貼っておきます - 瑞々しぃにぼしの自己紹介(自己紹介の記事です)

2020年5月31日 日記

2020年 5月 31日

まえがき

おはようございます(20:26)
よく寝たコネクター

添い寝相手募集中です。 布団食べてたらこんな時間になってしまったヨ

出来る男のサシスセソ

さ、 サムライ
し、 死ねなかった〜 
す、 スク水着てます
せ、 せこい
そ、 そうです。

健康管理

健康です。めっちゃ寝たわ

何した

寝て起きたら一日が終わりを迎えていた。

具体的に

・。・

今日解いた問題

今からコンテスト出る。

あとがき

あとで書くわ

以下は毎回記事に貼っているテンプレート

基本的に読書はTwitterで絡みのある人だけだと思いますが、僕のブログだけ見てるって人もいるかもしれないので、一応自己紹介っぽいことをしている記事を貼っておきます - 瑞々しぃにぼしの自己紹介(自己紹介の記事です)

2020年5月30日 日記

2020年 5月 30日

まえがき

なんか書きてえけどなあ、。何書こうかな

あーーーーーーーーーー今日はね、お家のお掃除をしたよ

野村プロコン

レートサガッタアアアアアアアアアアアアアア!!!!!!!!!!!!!!!!!!!1 5月中に水色の目標は…だめでした

いやまぁ、これは俺が悪い。5月の前半全く競技プログラミングやってなかったもん。

健康管理

う。。。健康

何した

お部屋掃除等など

具体的に

!!!#I!#FJLDSA!!!

今日解いた問題

ABC089 D- Practical Skill Test

[累積和,コスト,割った余り]
LとRが与えられた時、L -> R のコストは L % D を K とした時(ただし,K = 0のときはK = Dとする), K -> R のコストから K -> L のコストを引いたものとして求められる。 (A -> B -> C という経路があれば、BとCの距離はAとCの距離引くAとBの距離的な)

これを使えば、 D = 2のとき、 1 -> 3 -> 5 -> 7 -> 9 と瞬間移動するときのコストを 1 -> 1, 1 -> 3 , 1 -> 5, 1-> 7 , 1->9のコストをメモする。 2 -> 2, 2 -> 4, 2 -> 6, 2 -> 8 のコストをメモする。
この計9個(H * W個)の配列を用意してあげれば、各L,Rに対して1回の計算で求められる。

まず僕が書いた汚いコードがこちら

#include <bits/stdc++.h>

using namespace std;
using ll =long long;
#define For(i, a, b)    for(int i = (a) ; i < (b) ; ++i)
#define rep(i, n)       For(i, 0, n)
#define debug(x)  cerr << #x << " = " << (x) << endl;
using P = pair<int,int>;
//Write From this Line

int main()
{
    int h, w,d;
    cin >> h >> w >>d;
    map<int,P> mp;
    rep(i,h){
        rep(j,w){
            int a;
            cin >> a;
            mp[a] = {i,j};
        }
    }
    vector<int> cost[d+1];
    for(int i = 1; i <= d; i++) {
        cost[i].push_back(0);
        int ind = i;
        int bef = 0;
        while(ind + d <= h * w){
            P from = mp[ind];
            P to = mp[ind + d];
            int to_next = 0;
            to_next = abs(from.first - to.first) + abs(from.second - to.second);
            //debug(to_next);
            cost[i].push_back(bef + to_next);
            bef += to_next;
            ind += d;
        }
        //for(auto x:cost[i]){
        // cout << x <<" ";
        //} cout << endl;
    }
    int q;
    cin >> q;
    rep(i,q){
        int l, r;
        cin >> l >> r;
        int root = l %d;
        if(root == 0)root+= d; // cost[root]を見る
        // l ,  rまで行くまでに何回か
        int toL = (l + d - 1) / d - 1; 
        int toR = (r + d - 1) / d - 1; 
    // debug(toL);
    // debug(toR);
    // debug(cost[root][toL]);
    // debug(cost[root][toR]);
        cout << cost[root][toR] - cost[root][toL] << endl;
    }
}

やってることは、 cost[1] = {1->1のコスト, 1->3のコスト, 1->5 のコスト, 1->7のコスト, 1 -> 9 のコスト}
cost[2] = {2 -> 2のコスト, 2 -> 4 のコスト, ..., } というふうな配列を作る。 で、7 に行くためのコストはcost[1]の何番目だ?みたいなのを考えてやってました。

でも、そもそも7にいくためのコストは1 から 7 に行くだけで、 2 から 7 には行かないから,cost[7]に1->7へのコストを持たせればいいじゃん。って気づきました。

そうして改良舌コードが次です。

#include <bits/stdc++.h>

using namespace std;
using ll =long long;
#define For(i, a, b)    for(int i = (a) ; i < (b) ; ++i)
#define rep(i, n)       For(i, 0, n)
#define debug(x)  cerr << #x << " = " << (x) << endl;
using P = pair<int,int>;
//Write From this Line

int main()
{
    int h, w,d;
    cin >> h >> w >>d;
    map<int,P> mp;
    rep(i,h){
        rep(j,w){
            int a;
            cin >> a;
            mp[a] = {i,j};
        }
    }
    ll cost[h*w+1];
    for(int i = 1; i <= h * w; i++) {
        if(i <= d) {
            cost[i] = 0;
            continue;
        }
        cost[i] = cost[i-d] + abs(mp[i].first - mp[i-d].first) + abs(mp[i].second - mp[i-d].second);
    }
    int q;
    cin >> q;
    rep(i,q){
        int l, r;
        cin >> l >> r;
        cout << cost[r] - cost[l] << endl;
    }
}

水色パフォの問題が自力で解けると嬉しいですね。嬉しいです。

SoundHound Inc Programming Contest2018 C- Ordinary Beauty

[期待値の線形性]
なんや難しそうな問題だなぁ… 隣り合う二項について美しさを獲得できるかどうかで求めていけないかな…うんぬん…とかしていて結局解けないことが分かりました。

解説PDFを見て1mm理解,その後、数学/競プロメモこの方の記事を読んで1cm位理解しました。 なるほど。まぁ、二項間について着目しようという発想はヨカッタですね。各2項間について、得られる美しさの期待値を求める。他の2項間についても、美しさを得られる期待値は同じなので、存在する二項間がm-1個あるから、各二項間の美しさの期待値 * (m-1)が答え。ふうん。面白いじゃん。 期待値の線形性ね。なるほど。

え、期待値の線形性ってなんだっけ

和の期待値は期待値の和に等しい。

ふむ…? つまり、各二項間で得られる美しさの期待値をx,全体の期待値をXとすると、 $ X = x + x + x +... (xがm-1個) $ みたいなノリか。

NOMURA プログラミングコンテスト2020 C- Folia

[二分木,木の構築?,葉の数]

イヤアアアアアアアアアアアアアアアアアアアアアアアアアアアアアアアアアアアアアアアアアアアア 解説見ました。 (コンテストで解けなかった問題を復習したのも超久しぶり) なるほど… 深さNのところから順に、あり得る深さiの頂点の区間というものを求めていけばいいのか。天才だな。

あああああああああああああああああ レート挙げてええええええええ 競技プログラミングするぞ

あとがき

ねむいから書かない

以下は毎回記事に貼っているテンプレート

基本的に読書はTwitterで絡みのある人だけだと思いますが、僕のブログだけ見てるって人もいるかもしれないので、一応自己紹介っぽいことをしている記事を貼っておきます - 瑞々しぃにぼしの自己紹介(自己紹介の記事です)

続きを読む

2020年5月29日 日記

2020年 5月 29日

まえがき

今日は5月29日です。 つまり、...?

健康管理

健康だと思われます。 別にあんたのために健康になってるわけじゃないんだから…ッ!!

何した

応用数学、フランス語,離散数学を消化しました。 競プロもしてるよ!!!

具体的に

大学の授業を受けるという作業を19:30まで行っていました(ツカレタ)
それから2hくらいゲームして、仮眠とって0:30ぐらいに起きて今に至る〜〜〜〜〜

競技プログラミングはおとなしくRecommendationsを解くようにしました。

ちなみに僕が競プロのやる気だいぶなくなった原因は、Recommendations消化で解ける問題が無くなったことに苛ついてやる気が無くなってました。 また、解いた問題ちゃんと(ちゃんと??) 2☆の解いた問題たちに書いていくようにしようと思うニャン!(わん!)

今日解いた問題

ABC166 E- This Message Eill Self-Destruct in 5s

[連想配列,式変形]
・2人の持つ番号の差の絶対値が、2人の身長の和に等しい。 そのような(i,j)(i != j) の組を求めよ。という問題 つまり $a[i] + a[j] = |i-j|$ を満たすi,jの組を求める。 組み合わせを数えるから、(i,j)と(j,i)は同じ物として考える。 j > i となるような組だけ求めればいい。 先程の式を変形すると$a[j] + j = i - a[i]$となる。(iとjに着目して左辺と右辺に分ける)

つまり、各jに対して、a[j] + j が i - a[i] となるものを数えてあげればよくて、これを数える為にi < j となるiを全部見ることは愚かなので、連想配列に格納することで、a[j] + j = i - a[i] を満たすiをMAP[a[j] + j] を見るだけで数えられる!(やった〜!)

ABC070 D- Transit Tree Path

[木、DFS,深さ優先探索]
まぁ、深さでも幅優先探索でもどっちでもいいとは思うけど(知らん)

とりあえず求めるのは、Kが固定サれているっていうので、Kから各頂点への距離を最初に全部調べて上げればいい。 (与えられるグラフは木なので、Kから各頂点への距離はただ1つに定まる)

後はQ回のクエリで,1と8が与えられたら、1からKへの距離+Kから8への距離を答えとして出力する。

この問題、最近のABCで出たらdiffはどんなもんだろう…2017年8月の問題で、diffiが1190だけど、今でたら1050ぐらいまで下がるのかな?それとも茶パフォぐらいまで落ちるのかな?

個人的には深さ優先探索は書くのが苦手だから4桁diffあるような気がするけど...

ARC062 / ABC046 D- AtCodeerくんと変なじゃんけん

[貪欲??]
これは何でしょうか…?

TopCodeer君がpを出した後、AtCoDeer君がpかgかをとりあえず考えてみた。 p-gで負けの時、ポイントは-1, その後1点にするためには2回勝たないと行けない… (だからソレがどうした??)みたいなよくわからないことを考えてみた結果、パーを出せるときはパーを出しておけ。みたいな考えになってとりあえず提出してみたラACした。

う〜ん、1手目は絶対gだから、そこから考察してみると見えたりするのかな?? 今AtCoDeer君がpを一回だ出せる状態で、TopCoDeer君の手はgg/gp/pg/ppを全部考えてみる。 gg -> gg(0) , gp(+1) , pg(+1), pp(+2,不可能)
gp -> gg(-1), gp(+-0), pg(+-0), pp(+1, 不可能)
pg -> gg(-1), gp(+-0), pg(+-0), pp(+1, 不可能)
pp -> gg(-2), gp(-1), pg(-1), pp(+-0, 不可能)

まあやっぱりよくわかんないけど、なんとなくパーを出せるときはパー度しておいたほうが良さそうってことが感じ取れます。じゃあそうしよう!!

 string s;
    cin >> s;
    int ans = 0;
    rep(i,s.size()){
        if(i % 2 == 0){
            if(s[i] == 'p') {
                ans --;
            }
        } else {
            if(s[i] == 'g'){
                ans ++;
            }
        }
    }
    cout << ans << endl;

ACしちゃった、ってことで解説さんの証明見ましょうね

解説見ました。天才かよ・・・・・・・・・・・・・・・・・・・・・・・!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

一回全部グー出したとして、どこをPに変えるかを考える…すげええ!!!!!!!!!

あとがき

今日なんか面白いこと会ったかな…???

あ、22:30~の仮眠では、サーティーワンの夢を見ました。 そこで一生何買うか決めれずにウロウロしている夢です。 そのサーティーワンにはアイスクリームのみならず、クレープも自分で作れる、みたいなよくわからない仕様でした!サーティーワンアイスクリームが食べたい!!!!!!!!!!!!!

明日はなにする?

明日は土曜日なので大学の授業はない!、課題のストックもない!!ということで、嬉しい日ですね(えへへ)
大学の予習復習をするつもりは今の所ありません。
そのため、毎週土曜日に行っている一週間の整理と競技プログラミングを行っていきたいとおおもいますぅぅう(にゃん)

後、夜はコンテストに出ようね。

以下は毎回記事に貼っているテンプレート

基本的に読書はTwitterで絡みのある人だけだと思いますが、僕のブログだけ見てるって人もいるかもしれないので、一応自己紹介っぽいことをしている記事を貼っておきます - 瑞々しぃにぼしの自己紹介(自己紹介の記事です)

続きを読む

2020年5月28日 日記

2020年 5月 17日

まえがき

よ(やぁ)

今日はまともにブログ書くぞ〜という意気込みでございますでございます。

健康管理

健康です。 強いて言うならば、昼と夜カレー食ったんだけど、食った直後めちゃくちゃお腹ゆるくなった。
あと、最近お尻が痛いです。 今日も13時に起きて、大学に飯買いに行って、帰って飯食って作業しようと思ったんですが、お尻(別名 けつ)が痛かったため17:00まで寝てしまいました。

なぜだ?座りすぎが原因か?それとも最近筋トレしてるせいでお尻(別名 けつ)を壊してしまったか??

まぁ何故かはよく分からないですが、500万円ぐらいほしいですね。

健康ですって言ったけど嘘かもね(ハハッ)

何した

大学の講義を4つぐらいこなした(大学のスケジュールに遅れは取っていません)
ところで、大学の講義って、授業を受けるor課題を提出する。のどちらかをやれば授業を受けてる!!って言えるかどうかというとそうじゃなくて、期末テストなり中間テストなり、単位を取る為のなにかを乗り越えれるように知識つけないといけないんですよね。

知ってましたか? 僕は今日も明日も明後日も知るつもりはありません。

具体的に

キャリアデザイン(去年単位を落としたので)と、数学系の何かと数学系のなにかと情報系の何かの授業を受けました。

相互情報量だとかエントロトロトロトロピーだとかそのあたりの勉強を情報系の授業ではしましたね。 にゃーん(にゃ〜?)

今日解いた問題

ABC106 C- To Infinity

[文字列、ひらめき?]
これはまああれですね。

あなたは2の5000乗が1018を超えるということに気が付きますか? 
といったような問題ですね。(聖書にも書いてあるよ)

1は 1 -> 1 -> 1 -> というふうに変化します
2は 2 -> 22 -> 2222 -> 22222222 というふうに。 3は 3 -> 333 -> 333333333 -> 33333333333333333333 (3が多分27個)というふうに変化します。 でまぁ、K文字目を答えるという問題で、例えばSが1234952というような文字列だとしたら 5000兆回操作したあとは 122222222222222222222222222...(2が25000兆個続く)33333333333333...(3が35000兆個続く)以下(ry。 ということで、与えられるKが1の時だけ答えが0それ以外はどんなKが来ても2を出力すれば良い。 (2番目から1018番目は全て2だから)
的な

明日はなにする?

離散数学、フランス語、応用数学、創造的プログラミングとやらの授業を受ける。

なんでも応用数学は重さ1時間ぐらいの課題があるそうで(厄介だにゃ〜)

競プロをたくさんしたい。俺は青になる。黄色になる。

あとがき

猫ちゃんのことをネコチャンって呼ぶ人はいいやつ

以下は毎回記事に貼っているテンプレート

基本的に読書はTwitterで絡みのある人だけだと思いますが、僕のブログだけ見てるって人もいるかもしれないので、一応自己紹介っぽいことをしている記事を貼っておきます - 瑞々しぃにぼしの自己紹介(自己紹介の記事です)

2020年5月27日 日記

2020年 5月 27日

まえがき

おはにぼぴょおおおおおおん!!!!!!1

こんにちはだぴょん!!! にぼしだぴょん!!

ぴょんぴょこぴょ〜〜〜〜〜ん!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!11!!!!!!

終わり

いやうそ

健康管理

まぁ健康

何した

昼は大学の課題を。

夜は友達とApeXを2時ぐらいまで。それから今までラノベずっと読んでます

具体的に

^^

今日解いた問題

ナシ

あとがき

明日は木曜日 寝る前には授業片付けねえとな...

以下は毎回記事に貼っているテンプレート

基本的に読書はTwitterで絡みのある人だけだと思いますが、僕のブログだけ見てるって人もいるかもしれないので、一応自己紹介っぽいことをしている記事を貼っておきます - 瑞々しぃにぼしの自己紹介(自己紹介の記事です)

2020年5月26日 日記

2020年 5月 26日

まえがき

5月26日(火)の分の日記です。 今日は、12:00に一旦起きて、もうちょっと寝たい…寝たい…をして13:00にダップ(ダツおふとん),からの大学にレポートを提出しにいき、そこで友達と遭遇したので飯一緒に食って帰ってきました。

夜は少しアニメを見てエモい気分になってました。

まえがきってそもそも何書くところだっけ?なんか面白いこと書きたいな。

ルービックキューブ今日だけで50回位やったようなきがします。
プログラミング得意になりたいです。お金欲しい。神になりたい。知識がほしい。与えられたソースコードを読むのが得意になりたい。

こういうのって指導者なしで独学でもそのうちうまくなるのかな、不安だな。
かといって特別人一倍努力もしてないんですけどね(ガハハ)

健康管理

健康な気がする。強いて言えば人とずっと触れ合っていたいね。

何した

いつも通りをした。
今日は大学が1コマだけの日なのだが、明日(つまり水曜日)の分の授業を先に少しやってしまおうと手を出したらはかどらなくて泣いちゃった(僕が)

読書したい〜したい〜〜〜
昨日大学の生協で3冊位文庫本買ったよ。あとハルチカってシリーズの退出ゲームもKindleで買って読んでる。

あ、そうだ、今日はOverleafも少し触ったよ。そもそも俺特に書くもの無いのにね。先にもっとプログラミングを…って気もするけど。

てかまじで何も創作意欲沸かない。 プログラミングはしたいけど何も作りたいものがないから俺は競技プログラミングをしている節がある。
ってか、上へ上へ行きたいならもっと精進しないとな。ってお気持ちになった。頑張れ競技プログラミング 君は、、、君は黄色になれるかな??????????????????????????????????

具体的に

もう書いたよ。

今日解いた問題

簡単なの(甘え)

あとがき

猫です。にゃーん

以下は毎回記事に貼っているテンプレート

基本的に読書はTwitterで絡みのある人だけだと思いますが、僕のブログだけ見てるって人もいるかもしれないので、一応自己紹介っぽいことをしている記事を貼っておきます - 瑞々しぃにぼしの自己紹介(自己紹介の記事です)