マガジンのカバー画像

競技プログラミング

145
運営しているクリエイター

#python

ほぼ日刊競プロ ABC273 C - (K+1)-th Largest Number

ほぼ日刊競プロ ABC273 C - (K+1)-th Largest Number

C - (K+1)-th Largest Number

問題文
長さ N の数列 A=(A1,A2​,…,AN​) が与えられます。 K=0,1,2,…,N−1 のそれぞれについて、下記の問題を解いてください。1 以上 N 以下の整数 i であって、次の条件を満たすものの個数を求めよ。A に含まれる整数のうち A
iより大きいものはちょうど K 種類である。

考えたこと

まず問題文がわかり

もっとみる
ほぼ日刊競プロ ABC272 B - Everyone is Friends

ほぼ日刊競プロ ABC272 B - Everyone is Friends

B - Everyone is Friends

問題文
1,2,…,N の番号がついた N 人の人がいます。
M 回の舞踏会が行われました。 i (1≤i≤M) 回目の舞踏会には k
i人が参加し、参加した人は人 x
i,1,xi,2​,…,xi,ki​​でした。どの二人も少なくとも 1 回同じ舞踏会に参加したか判定してください。

考えたこと

実は時間内に考えつかなかった.解説には二重配

もっとみる
ほぼ日刊競プロ ABC271 A - 484558

ほぼ日刊競プロ ABC271 A - 484558

A - 484558

問題文
0123456789 に加えて 10,11,12,13,14,15 に対応する数字として ABCDEF を使う 16 進表記では、0 以上 255 以下の整数は 1 桁または 2 桁になります。
例えば、0 や 12 は 16 進表記では 0 や C と 1 桁になり、99 や 255 は 16 進表記では 63 や FF と 2 桁になります。
0 以上 255

もっとみる
ほぼ日刊競プロ ABC269  C - Submask

ほぼ日刊競プロ ABC269  C - Submask

C - Submask

問題文
非負整数 N が与えられるので、以下の条件を満たす非負整数 x を昇順に全て出力してください。
x を 2 進数として表記した時に 1 となる位の集合が、 N を 2 進数として表記した時に 1 となる位の集合の部分集合となる。
すなわち、全ての非負整数 k について、「 x の 2^kの位が 1 ならば、 N の 2^kの位は 1 」が成り立つ。

考えたこと

もっとみる
ほぼ日刊競プロ ABC154 D - Dice in Line

ほぼ日刊競プロ ABC154 D - Dice in Line

D - Dice in Line

問題文
N 個のサイコロが左から右に一列に並べてあります。左から i 番目のサイコロは 1 から piまでの pi​種類の目がそれぞれ等確率で出ます。
隣接する K 個のサイコロを選んでそれぞれ独立に振ったとき、出る目の合計の期待値の最大値を求めてください。

考えたこと

まず1からpiまでしか出ないサイコロの期待値を求める.
1の時=1,2の時=1.5,3の

もっとみる
ほぼ日刊競プロ ABC199 C - IPFL

ほぼ日刊競プロ ABC199 C - IPFL

C - IPFL

問題文
長さ 2N の文字列 S があります。
この文字列に対して Q 個のクエリが与えられます。i 番目のクエリでは 3 つの整数 Ti,Ai​,Bi​が与えられるので、以下の処理をします。Ti​=1 のとき : S の Ai​文字目と Bi​文字目を入れ替えるTi​=2 のとき : S の前半 N 文字と後半 N 文字を入れ替える(Ai​,Bi​の値は用いない)
例えば S

もっとみる
ほぼ日刊競プロ ABC175 C - Walking Takahashi

ほぼ日刊競プロ ABC175 C - Walking Takahashi

C - Walking Takahashi

問題文
数直線上で暮らす高橋君は、今座標 X にいます。これから高橋君はちょうど K 回、座標の正または負の方向に D 移動する行為を繰り返そうと考えています。より正確には、1 回の移動では 座標 x から x+D または x−D に移動できます。高橋君は、ちょうど K 回移動した後にいる座標の絶対値が最小となるように移動したいです。K 回の移動後の座

もっとみる

ほぼ日刊競プロ ABC177 C - Sum of product of pairs

C - Sum of product of pairs

問題文
N 個の整数 A
1,…,ANが与えられます。
1≤i<j≤N を満たす全ての組 (i,j) についての Ai​×Aj​の和を mod(10^9+7) で求めてください。

考えたこと普通に2重for文ではタイムオーバーしてしまうため,効率よく計算する方法を考える.

sum = A1*A2+A1*A3+A1*A4+A2*A3+A

もっとみる
日刊競プロ ABC253 -A - Median?

日刊競プロ ABC253 -A - Median?

A - Median?

問題文
整数 a,b,c が与えられます。b がこれらの整数の中央値であるかどうか判定してください。

考えたこと

整数a,b,cをリスト形式で受けて、ソートした際に1番目のリストの値が一致していればOKと考えた。

alist=list(map(int,input().split()))temp = sorted(alist)if alist[1]==temp[1]:

もっとみる
日刊競プロ ABC005 -B - おいしいたこ焼きの食べ方

日刊競プロ ABC005 -B - おいしいたこ焼きの食べ方

B - おいしいたこ焼きの食べ方

問題文
高橋君は試作したたこ焼きを食べることにしました。高橋君は熱々のたこ焼きが好きなので、できてすぐのたこ焼きから食べます。それぞれのたこ焼きが何秒前にできたかが与えられるので、一番できたてのたこ焼きが何秒前にできたか出力して下さい。

考えたこと

一番できたてのたこ焼きは、秒数が一番が小さいものになる。pythonのmin関数を使って出力すれば良いと考えた

もっとみる