0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

AtCoder初心者 DailyTrainingメモ②

Last updated at Posted at 2023-10-21

AtCoder初心者 DailyTrainingメモ②

AtCoder Python DailyTraining

ABC265 B-問題

問題文
洞窟は N 個の部屋が一列に並んだ構造で洞窟内には M 個のボーナス部屋があります。i 番目のボーナス部屋は部屋 X であり、この部屋に到達すると持ち時間が Y 増加します。
高橋君は部屋 N にたどりつくことができますか?

ポイント
ボーナスを部屋番号をインデックスとして取り扱い、移動の消費時間と同期させる
例)bonus=[0,2,5,3,0]

265B.py
入力例
4 1 10
5 7 5
2 10

# 入力
N,M,T = map(int,input().split())
L = [0] + list(map(int, input().split()))   # スタート位置を 0 とする
# L:[0, 5, 7, 5]

bonus=[0]*(N) # ボーナスを格納する 初期値 0埋め
for i in range(M):
    X,Y = map(int,input().split())
    bonus[X-1] = Y

# bonus:[0, 10, 0, 0]
for i in range(1,N):
    T -= L[i] 
    if T <= 0:
        print("No")
        exit()
    T += bonus[i]
print("Yes")

ABC282 A-問題

問題文
整数 K が与えられます。英大文字を A から昇順に K 個繋げて得られる文字列を答えてください。

ポイント
数値をアルファベット大文字に置換するとき、Pythonでは、「chr(ord('A') + i)」を使う
i が 0 のときは、A
i が 1 のときは、B

282A.py
K = int(input()) 

S = ""

for i in range(K):
    c = chr(ord('A') + i)   # 数値をアルファベット大文字に置換する
    S += c

print(S)

AtCoder初心者 DailyTrainingメモ②

AtCoder Python DailyTraining

ABC271 A-問題

問題文
0 以上 255 以下の整数 N を、必要に応じて先頭に 0 を加えることでちょうど 2 桁の 16 進表記に変換してください。

ポイント
10進数から16進数に変換するときは、hex() を使う

271A.py
# 入力
N = int(input()) 

X = hex(N) # 16進数に変換

# hex を使うと N=12の場合は、0xc N=255の場合は、0xff
# 答えは、それぞれ 0C /  FF  にする必要がある

if N <= 15:
    # 前ゼロを付けて、末尾の1桁を表示(小文字→大文字)
    X = X[-1]
    print("0" + X.upper())
else:
    # 末尾の2桁を表示(小文字→大文字)
    X = X[2:] 
    print(X.upper())
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?