雑記

競技プログラミング

竸プロ精進記 ABC040 B □□□□□ python 3

問題:可能な組み合わせを全探索し、それぞれの時のタイルの余り数、及び長方形の長辺と短辺の差が最小となる条件を探します。コード例N=int(input())ans=1000000000000000000mod=0if N==1: print(...
競技プログラミング

竸プロ精進記 Code festival 2016 B 仲良しうさぎ python 3

問題:お互いを参照し合う関係のリストの要素をピックアップする問題です。要素の数が少ないので素直に全探索していけば時間内に解けます。コード例N=int(input())a=list(map(int,input().split()))cnt=0...
競技プログラミング

竸プロ精進記 ABC021 B 嘘つきの高橋くん Python 3

問題:一見グラフを使う経路問題で難しそうに見えるのですが、実際にはサンプルケースの中で紹介されているNG事例を一つずつ言われた通りに対処すれば簡単に解ける問題です。すなわち、経路として与えられる数列の中にダブりがないこと。そしてもう一つが出...
競技プログラミング

ABC136 C Build Stairs Python 3

問題:与えられた数列の各要素に対して、そのままにするか、数を1減らすか選択していき、うまく単調に増加する階段を作ることができるか判定する問題。一手ずつ見落としなくシミュレーションすれば解ける問題。コード例左側から順番に確認していきます。N=...
競技プログラミング

ABC115 Christmas Eve Python 3

問題:ランダムに並んだN個の整数列の内から、K個の整数を選び、選んだ整数の中での最大値と最小値との間の差が最小になる値を回答する問題。N,Kともに10^5オーダーなので、まともに組み合わせを全探索していてはとても間に合いません。しかし数列を...
競技プログラミング

AGC021 A Digit Sum 2 python 3

問題:任意の正の整数Nが与えられた際に、それ以下の数で各桁の数字を足し合わせた和が最も大きくなる数字を求めて、各桁の和を回答する問題。整数の各桁をどのように取得するか、またN以下で各桁の和が最大になるのはどのような条件か、考察が必要となる。...
競技プログラミング

ABC097 B Exponential

問題:2重のfor文で全探索して条件を満たすものを見つければOKです。コード例X=int(input())ans=0for i in range(1,X+1): for j in range(2,11): tmp=i**j if ans<t...
競技プログラミング

三井住友信託銀行プログラミングコンテスト2019 100 to 105 python 3

問題:コード例X=int(input())maisu_max=X//100if X<100: print(0) exit()else: X=str(X) X=int(X) if X==0: print(1) exit()ans=100for...
競技プログラミング

ABC128 B Guidebook Python3

問題:文字列と数値からなる2次元配列が与えられ、文字列を昇順にソートした上で、同じ文字列の項目内で数値を基準に降順にソートするという問題。コード例N=int(input())S=for row in S: row=int(row)SS=so...
競技プログラミング

Pythonで実装するユークリッドの互除法 最大公約数の計算

最大公約数:ユークリッドの互除法整数A,B間の最大公約数(Greatest Common Divisor : GCD)は「ユークリッドの互除法」で求めることができます。下記はpythonでの実装例です。a,b=map(int,input()...