ITP1_7_B – How Many Ways? 

AtCoderなど過去問

ITP1_7_B – How Many Ways?

1 から n までの数の中から、重複無しで3つの数を選び、その合計が x となる組み合わせの数を求める問題。

while True:
    n,x = map(int,input().split())
    if n == 0 and x == 0:
        break
    count = 0
    for i in range(1,n+1):
        for j in range(i+1,n+1):
            for k in range(j+1,n+1):
                if (i + j + k) == x:
                    count += 1
    print(count)

シンプルに全ての組み合わせを探索する。i < j < kにすることで重複しない組み合わせを得る。

コメント

タイトルとURLをコピーしました