有一组自然数(80,99,40,60,25,45,30,50,20),请问哪些数值相加的结果是100.

有一组自然数(80,99,40,60,25,45,30,50,20),请问哪些数值相加的结果是100.
附:这个数组可能会非常大,有几千几万个值,所以我需要一个聪明的算法.
oza9x 1年前 已收到6个回答 举报

woaishmnh 种子

共回答了20个问题采纳率:95% 举报

一个一个的去考虑
1,首先排除99
2,再看80,只能是80+20=100
3,再看40,只能是60+40=100
4,再看60,只能是60+40=100(重复,所以排除)
5,再看25,只能是25+45+30=100
6,再看45,只能是45+25+30=100(重复,所以排除)
7,再看30,有两种情况,30+25+45=100(重复,所以排除)
或者30+50+20=100
8,再看50,只能是30+50+20=100(重复,所以排除)
9,再看20,有两种情况30+50+20=100(重复,所以排除)
或者80+20=100
所以共有80+20=100;60+40=100;25+45+30=100;30+50+20=100
4种情况

1年前

5

fxmzx 幼苗

共回答了4个问题 举报

数组不是已经给出来了么,怎么说可能会非常大?

1年前

2

独自环绕 幼苗

共回答了10个问题 举报

80+20=100;60+40=100;25+45+30=100;30+50+20=100

1年前

2

yan602603401 幼苗

共回答了9个问题 举报

可以重复吗?

1年前

1

Lydia730120 幼苗

共回答了1个问题 举报

不知道……

1年前

1

ii的男人 幼苗

共回答了14个问题 举报

很多啊

1年前

1
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 21 q. 0.241 s. - webmaster@yulucn.com