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.

【Paiza問題集】条件分岐/積の最小化

Posted at

Paiza問題集

Pythonで回答

条件分岐/積の最小化

Step01 けた数の測定

"""
けた数の測定
https://paiza.jp/works/mondai/conditions_branch/conditions_branch__complex_step1

問題
整数Nが与えられます
Nのけた数を出力してください
"""

print(len(str(input())))

Step02 足したり引いたり

"""
足したり引いたり
https://paiza.jp/works/mondai/conditions_branch/conditions_branch__complex_step2

問題
整数N,A,B(-99≦N,A,B≦100)があります
以下の2つの操作をそれぞれ1回ずつおこなったとき、Nを0にできる場合はYESを、できない場合はNOを出力してください
1.NにAを足す、またはNからAを引く
2.NにBを足す、またはNからBを引く
"""

N, A, B = map(int, input().split())

if N + A + B == 0:
    print("YES")
elif N + A - B == 0:
    print("YES")
elif N - A + B == 0:
    print("YES")
elif N - A - B == 0:
    print("YES")
else:
    print("NO")

Step03 同値判定

"""
同値判定
https://paiza.jp/works/mondai/conditions_branch/conditions_branch__complex_step3

問題
整数N,2つの数列A,Bが与えられます
1≦i≦Nを満たす整数iのうち、A_iとB_iが等しくなるようなiの個数を求めてください
"""

N = int(input())
A = input().split()
B = input().split()
count = 0

for i in range(N):
    if A[i] == B[i]:
        count += 1

print(count)

Step04 終了判定

"""
終了判定 
https://paiza.jp/works/mondai/conditions_branch/conditions_branch__complex_step4
"""

N = int(input())
A = list(map(int, input().split()))
total = 0

for i in range(N):
    if A[i] % 2 != 0:
        break
    total += A[i]

print(total)

Step05 終了判定2

"""
終了判定2
https://paiza.jp/works/mondai/conditions_branch/conditions_branch__complex_step5

問題
2以上の整数N,Kが与えられます
「Nを2倍した数でNを更新する」という操作を何度か繰り返すことを考えます
このとき, ちょうどある回数MでNの値はK以上になります
この時点で操作の繰り返しを終了することにします
"""

N, K = map(int, input().split())
M = 0

while not N < K:
    N *= 2
    M += 1

print(M)

Step06 池の周回

"""
池の周回
https://paiza.jp/works/mondai/conditions_branch/conditions_branch__complex_step6
"""

N, K ,T = map(int, input().split())

print("YES" if K*T % N == 0 else "NO")

Step07 崖に落ちるか判定

"""
崖に落ちるか判定
https://paiza.jp/works/mondai/conditions_branch/conditions_branch__complex_step7
"""

N, K, T = map(int, (input().split()))
print("YES" if K*N<=T+0.1 else "NO")

Step08 タイルの敷き詰め

"""
タイルの敷き詰め
https://paiza.jp/works/mondai/conditions_branch/conditions_branch__complex_step8
"""

H, W = map(int, (input().split()))

print("YES" if H%2==0 and W%2==0 and (H!=0 and W!=0) else "NO")

Final問題 積の最小化

"""
積の最小化
https://paiza.jp/works/mondai/conditions_branch/conditions_branch__complex_boss

問題
-1,000≦A≦B≦1,000を満たす2つの整数A,Bが与えられます
A以上B以下である2つの整数X,Yを適当に選んだとき、X*Yの取り得る値の最小値を出力してください
"""

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

# AからBの間に0が含まれる
if A <= 0 and B >= 0:
    print(A * B)
# AとBが両方とも正の数
elif A > 0:
    print(A * A)
# AとBが両方とも負の数
else:
    print(B * B)
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?