ebisukeプログラミング初心者脱出黙示録

30歳を過ぎてから始めたプログラミングと競プロの記録。Pythonで取り組んでいます。Arduinoで電子工作も

AtCoder-ABC205 A - kcal / B - Permutation Check【Python解答例】

f:id:ebisuke33:20210613230824p:plain

AtCoder Beginner Contest205のA とB問題についてPythonの解答例を記事にしていきます。
AtCoder Beginner Contest 205 - AtCoder



AtCoder Beginner Contest205 A - kcal

A - kcal

問題文

100 mL あたり A kcal のエネルギーを持つドリンクがあります。このドリンク B mL は何 kcal のエネルギーを持つでしょうか?

制約

・0≤A,B≤1000
・入力は全て整数である。

解答例

a, b = map(int,input().split())

print(a * b / 100)

解説

100mL当たりのカロリーがわかっている飲み物についてB mLのカロリーを答える問題です。

1 mL当たり a / 100 キロカロリーなのでa × b / 100が求める値です。

この値を出力すればOKです。


AtCoder Beginner Contest205 B - Permutation Check

B - Permutation Check

問題文

1 以上 N 以下の整数からなる長さ N の数列 A=(A1,A2,…,AN) が与えられます。

A が (1,2,…,N) の並び替えによって得られるかどうか判定してください。

制約

・1≤N≤10^3
・1≤Ai≤N
・入力は全て整数である。

解答例

n = int(input())

A = list(map(int, input().split()))

flag = True
for i in range(1,n+1):
    for j in range(n):
        if i == A[j]:
            break
    else:
        flag = False
        break

if flag:
    print("Yes")
else:
    print("No")

解説

数列Aの要素について1 からNまでの数字に並び替えられるか答える問題です。

1からNまでの数字がAにあるかフラグ管理しながら順番に調べていきました。

i が A にあれば次の i + 1 を調べています。
もしなければ1からNに並び替えることができないのでflagをFalseにしました。

ループを抜けた後にflagを見て、TrueならYes、FalseならNoを出力すればACでした。



ABC205の関連記事はこちら
ebisuke33.hatenablog.com
ebisuke33.hatenablog.com