回答編集履歴

3

不要かと思ってたけど必要だったらしいわ。無学なせいで何度も追記ごめんな

2022/11/15 05:41

投稿

pig_vba
pig_vba

スコア807

test CHANGED
@@ -1,7 +1,9 @@
1
+ 1<N<2000なので三重ループさせると最大80億周近くなので死にますね。
2
+
1
3
  そもそもZはループさせる必要がないと思います。札の合計がN枚なのが確定なので、
2
4
  ```Logic
3
5
  z=N-(x+y)
4
6
  ```
5
7
  で必然的にZが求まります。**この時の合計金額がY円かどうか**を判定すればいいだけなので、模範解答としては2重ループになるのではないでしょうか。
6
8
 
7
- また、コードを見たところ、金額しか判定していないので仮にN=5,Y=16000と入力した場合1 1 1と返ってきてしまい、正しい答えと言えません。ここが不正解とされた原因だと思います。
9
+ また、コードを見たところ、金額しか判定していないので仮にN=5,Y=16000と入力した場合1 1 1と返ってきてしまい、正しい答えと言えません。ここが不正解とされた原因だと思います。(って追記してたらZuishinさんが解説してくれてたわ)

2

冷静に考えたら最初の一行いらない気がする

2022/11/15 05:35

投稿

pig_vba
pig_vba

スコア807

test CHANGED
@@ -1,5 +1,3 @@
1
- 元サイトを見てきましたが、その3重ループは**制約上最大80億周するので**オーバーフローするんじゃないでしょうか。
2
-
3
1
  そもそもZはループさせる必要がないと思います。札の合計がN枚なのが確定なので、
4
2
  ```Logic
5
3
  z=N-(x+y)

1

不正解理由の補足

2022/11/15 05:33

投稿

pig_vba
pig_vba

スコア807

test CHANGED
@@ -5,3 +5,5 @@
5
5
  z=N-(x+y)
6
6
  ```
7
7
  で必然的にZが求まります。**この時の合計金額がY円かどうか**を判定すればいいだけなので、模範解答としては2重ループになるのではないでしょうか。
8
+
9
+ また、コードを見たところ、金額しか判定していないので仮にN=5,Y=16000と入力した場合1 1 1と返ってきてしまい、正しい答えと言えません。ここが不正解とされた原因だと思います。