#45284: 關於NA的疑問


seriousfoul@gmail.com (文翊(Silver M1911))

學校 : 不指定學校
編號 : 298653
來源 : [125.231.11.226]
最後登入時間 :
2025-02-27 10:15:11
c317. 硬幣問題!前傳 | From: [58.99.100.212] | 發表日期 : 2025-02-05 21:11

-----------------程式碼---------------

n = int(input())  #次數

for i in range(n):
    coin1, coin2 = 0, 0                              #硬幣種類數量
    list1 = list(map(int, input().split()))      #int輸入
    
    if list1[2] > list1[1]:  # 比硬幣大小
        list1[1], list1[2] = list1[2], list1[1]    
    
    for j in range(list1[0] // list1[1], 0, -1):  
                                                              #總額 除以 第一硬幣 到0停止 每次少1
        if list1[0] - list1[1] * j == 0 : 
                                                              # 第二硬幣為0時
            continue
        if (list1[0] - list1[1] * j) % list1[2] == 0:
                                                            # (總額 - 第一種幣 * 數量) 可以被 第二硬幣整除
            coin1 = j
            coin2 = (list1[0] - list1[1] * j) // list1[2]
            break
        
    if coin1 >= 1 and coin2 >= 1: #兩種都有時
        print(coin1 + coin2)
    else:
        print(-1)

----------------------測試分隔線---------------------------

【查看詳細評分結果】

#0: 10% WA (line:6)

您的答案為: 25
正確答案為: 22

#1: 10% WA (line:6)

您的答案為: 25
正確答案為: 22

#2: 10% WA (line:6)

您的答案為: 25
正確答案為: 22

#3: 10% WA (line:6)

您的答案為: 25
正確答案為: 22

#4: 10% WA (line:6)

您的答案為: 25
正確答案為: 22

#5: 10% WA (line:6)

您的答案為: 25
正確答案為: 22

#6: 10% WA (line:6)

您的答案為: 25
正確答案為: 22

#7: 10% WA (line:6)

您的答案為: 25
正確答案為: 22

#8: 10% WA (line:6)

您的答案為: 25
正確答案為: 22

#9: 10% WA (line:6)

您的答案為: 25
正確答案為: 22



請問哪裡有問題?
 
#45285: Re: 關於NA的疑問


leeguanhan0909@gmail.com (李冠翰)

學校 : 高雄市苓雅區復華高級中學國中部
編號 : 276558
來源 : [36.238.151.3]
最後登入時間 :
2025-03-13 22:32:01
c317. 硬幣問題!前傳 | From: [36.238.186.113] | 發表日期 : 2025-02-05 22:07

-----------------程式碼---------------

n = int(input())  #次數

for i in range(n):
    coin1, coin2 = 0, 0                              #硬幣種類數量
    list1 = list(map(int, input().split()))      #int輸入
    
    if list1[2] > list1[1]:  # 比硬幣大小
        list1[1], list1[2] = list1[2], list1[1]    
    
    for j in range(list1[0] // list1[1], 0, -1):  
                                                              #總額 除以 第一硬幣 到0停止 每次少1
        if list1[0] - list1[1] * j == 0 : 
                                                              # 第二硬幣為0時
            continue
        if (list1[0] - list1[1] * j) % list1[2] == 0:
                                                            # (總額 - 第一種幣 * 數量) 可以被 第二硬幣整除
            coin1 = j
            coin2 = (list1[0] - list1[1] * j) // list1[2]
            break
        
    if coin1 >= 1 and coin2 >= 1: #兩種都有時
        print(coin1 + coin2)
    else:
        print(-1)

----------------------測試分隔線---------------------------

【查看詳細評分結果】

#0: 10% WA (line:6)

您的答案為: 25
正確答案為: 22

#1: 10% WA (line:6)

您的答案為: 25
正確答案為: 22

#2: 10% WA (line:6)

您的答案為: 25
正確答案為: 22

#3: 10% WA (line:6)

您的答案為: 25
正確答案為: 22

#4: 10% WA (line:6)

您的答案為: 25
正確答案為: 22

#5: 10% WA (line:6)

您的答案為: 25
正確答案為: 22

#6: 10% WA (line:6)

您的答案為: 25
正確答案為: 22

#7: 10% WA (line:6)

您的答案為: 25
正確答案為: 22

#8: 10% WA (line:6)

您的答案為: 25
正確答案為: 22

#9: 10% WA (line:6)

您的答案為: 25
正確答案為: 22



請問哪裡有問題?


題目沒有說一定要兩種都是使用,其中一種即可。

例如 20 10 5,只要2(10*2) 不一定要3(10+5*2)

參考程式

 

 
ZeroJudge Forum