ターミナルをかっこよくする
上記をやってみた。なお、oh-my-zsh
のインストールで.zshrc
などが上書きされる恐れがあるので、バックアップなどをとった方が良いかもしれない。
ABC326
総評
A、Bのみ解けた
2UP3DOWN
これは問題の通りに分岐させれば良いだけ
x, y = map(int, input().split()) a = abs(x - y) if x < y: if a > 2: print('No') else: print('Yes') else: if a > 3: print('No') else: print('Yes')
326-like Numbers
全探索する。具体的には、Nから初めて919までを試してみれば良い。各桁ごとの数値に分割する方法は色々あると思う。
N = int(input()) for i in range(N, 920): first = i // 100 second = (i // 10) % 10 third = i % 10 if first * second == third: print(i) break
Peak
解けず。累積和な気がしたが、どうも違うようだ。
コンテスト中の考察
- 配列
count
を作成する。これは座標を擬似的に模したもの。つまり、count[0] ~ count[max(A)]の配列をとる。この配列は全ての要素を0で初期化する。 入力配列Aを読み込み、count[Ai]の値をインクリメントする。 こうすることで、どの座標にいくつプレゼントがあるかが記録される。 - 上記のcount配列に対して累積和の配列を作成する。これはPythonであれば
itertools.accumlate
で作成できる。 - 累積和配列に対して区間ごとのmaxを調べていく
from itertools import accumulate n, m = map(int, input().split()) a = list(map(int, input().split())) maxi = max(a) l = [0] * (maxi + 1) for i in a: l[i] += 1 acc = [i for i in accumulate(l)] ans = 0 for i in range(maxi - m): ans = max(ans, acc[i+m]-acc[i]) print(ans)
上記ではダメな理由
単純に、Aiの取り得る最大値が10 ^ 9のため、count配列作成時にO(10 ^ 9)の計算量となるため、TLEになる。 与えられた制約からすると、O(N)くらいじゃないと厳しい。
解説ACをする
尺取り法というものを利用すると良いらしい
n,m = map(int,input().split()) a = list(map(int,input().split())) a.sort() a.append(9000000000000) res = 0 r = 0 for l in range(0,n): while a[r] < a[l]+m: r += 1 res = max(res,r-l) print(res)
jenvで設定してもjava --versionが意図したものにならない
解決策
PATH
の設定を見直し、./.jenv/shims
が先に読み込まれるようにする。具体的には以下のようにする。
# setting PATH. typeset -U path PATH path=( $HOME/.jenv/shims # 先に読み込ませる /opt/homebrew/bin(N-/) /opt/homebrew/sbin(N-/)
原因など
私の環境に2箇所にjava
コマンドが混在していたことが原因。
/usr/bin/java $HOME/.jenv/shims/java
jenv
が起動するjava
コマンドは.jenv
ディレクトリ配下にあるものを利用するのが正しいにも関わらず、/usr/bin/java
を使用していたことが原因だった
tfenv installが失敗する
この記事は
tfenv install 0.13.5
が失敗した場合の対処方法メモ。
筆者はM1Macを使用しています。
対処方法
M1 Macでtfenvを使うと特定のVersionのTerraformのダウンロードに失敗するに記載の通りです。直接バイナリをダウンロードして、該当のディレクトリに配置します。
手順
以下、パスは使用しているバージョン管理ツールによって異なりますので、あくまで私のやった手順です。
必要なバイナリが含まれるzipをダウンロード
私の場合は0.13.5が必要だったので、こちらから[terraform_0.13.5_darwin_amd64.zip]をダウンロードしました。
移動して解凍
ブラウザからダウンロードしたzipは~/Downloads
に保存されているので、対象のディレクトリに移動します。
$ mv ~/Downloads/terraform_0.13.5_darwin_amd64.zip /opt/homebrew/Cellar/tfenv/3.0.0/versions/0.13.5 $ cd /opt/homebrew/Cellar/tfenv/3.0.0/versions/0.13.5 $ unzip terraform_0.13.5_darwin_amd64.zip Archive: terraform_0.13.5_darwin_amd64.zip inflating: terraform
tfenv use
上記までの手順ができれば、tfenv use
でダウンロードしたバージョンのterraformが利用できるようになります。
以上。