今日やったこと(2020/5/1)
5月になってしまいました。いつのまにかに葉桜になっているし(遅い)、最高気温が25度を超しているし、暑くて寝苦しい夜が来そうなのをひしひしと感じるようになりました。4月を振り返ってみると本当に何もしなかったことを後悔してしまいます。今日の起床は11時半、相変わらずクズみたいな生活リズムです。シャワーを浴びて、ご飯食べてたら12時半になってしまったのでそこから作業開始!
1. vscodeとgithubの環境構築
仮にも情報系だからgitとgithubぐらい使えるようになったほうがいいなーと思いまして解いた問題のコードをgithubに上げて管理することにしました。エディタはいろいろ調べてたら今まで使っていたVScodeが競技プログラミングにも便利そうなのでVscodeを使ってます。
そのときに詰まってしまったことがあったのでメモします。環境はwslのubuntu18.04LSをvscodeのRemote-WSLを使ってます。
2. VScode と git のインストール
ここでwindowsにgitをインストールしたんですが、Remote-WSLだとWSLにインストールされているgitを使うからインストールしなくてよかったのかも? wslにはすでにgitが入っていたのでそのまま続行
3. 公開鍵と秘密鍵の作成からのssh接続で失敗
こちらのページを参考にして公開鍵と秘密鍵を設定してgithubへssh接続を試みました。
GitHubでssh接続する手順~公開鍵・秘密鍵の生成から~
$ ssh git@github.com PTY allocation request failed on channel 0 Hi mowamowa! You've successfully authenticated, but GitHub does not provide shell access. Connection to github.com closed.
なんか変なのでてるもののsshに接続できた!と思ったのだが一度VScodeを再起動すると接続できない・・・
$ ssh github.com mowa@github.com: Permission denied (publickey).
なんでかなーと思ったらssh-agentでssh-addを使って登録しても、terminalを再起動しちゃうと設定が消えてしまうみたい! 再起動するたびにeval $("ssh-agent")'して
ssh-addをするのも大変だし、
.bash_profile`に書けばいいのかなーと思ったんですけど面倒くさくて中止・・・
sshで接続できるようになってもterminalからはgitにアクセスできるものの、VScode上のgitからはpermission denied
が出て結局できませんでした! なのでもうssh接続するのはあきらめて、httpsでいろいろやりとりすることにしました!sshとhttpsの違いもよく分かっていないのでこれから勉強しようと思います。
3. WSLからのwindows領域へのgit cloneはできない!
リポジトリをwslとwindows両方から見れたら便利かなーと思って/mnt/c/git/
にgithubで作成したリポジトリをgit clone
してみたところ失敗・・・
$ git clone https://github.com/mowamowa/AtCoder.git Cloning into 'AtCoder'... error: chmod on /mnt/c/git/AtCoder/.git/config.lock failed: Operation not permitted fatal: could not set 'core.filemode' to 'false'
調べてみるとwindowsとubuntuではファイルシステムが違うためcloneできないらしい。なのであきらめてubuntu配下で作業を行うことにしました・・・
4. ABC157ABC問題
上記の作業が終わった時点で時計はすでに17時を回っていました、悲しい。
とりあえず何問か解こうと思って今日はABC157のABCを解いてみることにしました。
1. A問題
簡単でした。
2. B問題
ビンゴの配列はvectorの2次元配列で作ったほうがいいのかそれとも普通の配列でいいのか・・・
3. C問題
全部ループで回して探索しても1000で済みそうなのでその方針でプログラミング開始
スムーズに行けると思ったもののi番目の桁の数を取り出す方法で詰まる・・・ 計算して求めるか文字列にして求めるか迷ったものの文字列にして求める方法で作成
str[i]
で数値が返ってくるとずっと勘違いして入力の数字と比較しても全然合わなくてどんどん時間がたってく・・・ そこでやっとstr[i]
で返ってくるのはchar型の文字だということに気づいてstr[i]-'0'
で数字に変換しました。
完成してサンプルで動かしてみたら全部正解だったので提出みたらみごとにWA・・・ なんかいろいろ変えてみたらACしました、気力がつきたので原因究明はできず・・・
5. 今日のまとめ
明日は早起きして朝から頑張りたい!!