1-20的两个数把和告诉A,积告诉B,A说不知道是多少,B也说不知道,这时A说我知道了,B说我也知道了

题目:1-20的两个数把和告诉A,积告诉B,A说不知道是多少,B也说不知道,这时A说我知道了,B说我也知道了。

1~20的 2个数 x 、y

a=x+y ,b=x*y;

1~20之间的所有整数为:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20;

1.A为什么说不知道?

因为x、y的和有n(这个n是个具体的值)种重复项的结果,所有A无法判断x、y的具体值。

如 A=4;但无法判断:A=3+1 还是A=2+2;

得出A的x、y和的重复组合>=2;

2. B说不知道,(同理)

有重复项 B=10;B=2*5 或 B=1*10;

得出B的x、y积的重复组合>=2;

3.B说不知道,为什么A说自己知道了?

以A的角度思考:A本身知道a的值,但因为有重复项,则表明无法确定具体的x、y;但通过B说不知道,表明B的x*y也有重复项,则可以通过A的范围与B的范围的交集,在交集中的值。

1.当x=y; (交集太多,无法具体确定)

A的和

Sum 2 -> 1

Sum 3 -> 1

Sum 4 -> 2

Sum 5 -> 2

Sum 6 -> 3

Sum 7 -> 3

Sum 8 -> 4

Sum 9 -> 4

Sum 10 -> 5

Sum 11 -> 5

Sum 12 -> 6

Sum 13 -> 6

Sum 14 -> 7

Sum 15 -> 7

Sum 16 -> 8

Sum 17 -> 8

Sum 18 -> 9

Sum 19 -> 9

Sum 20 -> 10

Sum 21 -> 10

Sum 22 -> 10

Sum 23 -> 9

Sum 24 -> 9

Sum 25 -> 8

Sum 26 -> 8

Sum 27 -> 7

Sum 28 -> 7

Sum 29 -> 6

Sum 30 -> 6

Sum 31 -> 5

Sum 32 -> 5

Sum 33 -> 4

Sum 34 -> 4

Sum 35 -> 3

Sum 36 -> 3

Sum 37 -> 2

Sum 38 -> 2

Sum 39 -> 1

Sum 40 -> 1

B的积

Product 1 -> 1

Product 2 -> 1

Product 3 -> 1

Product 4 -> 2

Product 5 -> 1

Product 6 -> 2

Product 7 -> 1

Product 8 -> 2

Product 9 -> 2

Product 10 -> 2

Product 11 -> 1

Product 12 -> 3

Product 13 -> 1

Product 14 -> 2

Product 15 -> 2

Product 16 -> 3

Product 17 -> 1

Product 18 -> 3

Product 19 -> 1

Product 20 -> 3

Product 21 -> 1

Product 22 -> 1

Product 24 -> 3

Product 25 -> 1

Product 26 -> 1

Product 27 -> 1

Product 28 -> 2

Product 30 -> 3

Product 32 -> 2

Product 33 -> 1

Product 34 -> 1

Product 35 -> 1

Product 36 -> 4

Product 38 -> 1

Product 39 -> 1

Product 40 -> 3

Product 42 -> 2

Product 44 -> 1

Product 45 -> 2

Product 48 -> 3

Product 49 -> 1

Product 50 -> 1

Product 51 -> 1

Product 52 -> 1

Product 54 -> 2

Product 55 -> 1

Product 56 -> 2

Product 57 -> 1

Product 60 -> 4

Product 63 -> 1

Product 64 -> 2

Product 65 -> 1

Product 66 -> 1

Product 68 -> 1

Product 70 -> 2

Product 72 -> 3

Product 75 -> 1

Product 76 -> 1

Product 77 -> 1

Product 78 -> 1

Product 80 -> 3

Product 81 -> 1

Product 84 -> 2

Product 85 -> 1

Product 88 -> 1

Product 90 -> 3

Product 91 -> 1

Product 95 -> 1

Product 96 -> 2

Product 98 -> 1

Product 99 -> 1

Product 100 -> 2

Product 102 -> 1

Product 104 -> 1

Product 105 -> 1

Product 108 -> 2

Product 110 -> 1

Product 112 -> 2

Product 114 -> 1

Product 117 -> 1

Product 119 -> 1

Product 120 -> 3

Product 121 -> 1

Product 126 -> 2

Product 128 -> 1

Product 130 -> 1

Product 132 -> 1

Product 133 -> 1

Product 135 -> 1

Product 136 -> 1

Product 140 -> 2

Product 143 -> 1

Product 144 -> 3

Product 150 -> 1

Product 152 -> 1

Product 153 -> 1

Product 154 -> 1

Product 156 -> 1

Product 160 -> 2

Product 162 -> 1

Product 165 -> 1

Product 168 -> 1

Product 169 -> 1

Product 170 -> 1

Product 171 -> 1

Product 176 -> 1

Product 180 -> 3

Product 182 -> 1

Product 187 -> 1

Product 190 -> 1

Product 192 -> 1

Product 195 -> 1

Product 196 -> 1

Product 198 -> 1

Product 200 -> 1

Product 204 -> 1

Product 208 -> 1

Product 209 -> 1

Product 210 -> 1

Product 216 -> 1

Product 220 -> 1

Product 221 -> 1

Product 224 -> 1

Product 225 -> 1

Product 228 -> 1

Product 234 -> 1

Product 238 -> 1

Product 240 -> 2

Product 247 -> 1

Product 252 -> 1

Product 255 -> 1

Product 256 -> 1

Product 260 -> 1

Product 266 -> 1

Product 270 -> 1

Product 272 -> 1

Product 280 -> 1

Product 285 -> 1

Product 288 -> 1

Product 289 -> 1

Product 300 -> 1

Product 304 -> 1

Product 306 -> 1

Product 320 -> 1

Product 323 -> 1

Product 324 -> 1

Product 340 -> 1

Product 342 -> 1

Product 360 -> 1

Product 361 -> 1

Product 380 -> 1

Product 400 -> 1

2.当x!=y;

A的和:

Sum 3 -> 1

Sum 4 -> 1

Sum 5 -> 2

Sum 6 -> 2

Sum 7 -> 3

Sum 8 -> 3

Sum 9 -> 4

Sum 10 -> 4

Sum 11 -> 5

Sum 12 -> 5

Sum 13 -> 6

Sum 14 -> 6

Sum 15 -> 7

Sum 16 -> 7

Sum 17 -> 8

Sum 18 -> 8

Sum 19 -> 9

Sum 20 -> 9

Sum 21 -> 10

Sum 22 -> 9

Sum 23 -> 9

Sum 24 -> 8

Sum 25 -> 8

Sum 26 -> 7

Sum 27 -> 7

Sum 28 -> 6

Sum 29 -> 6

Sum 30 -> 5

Sum 31 -> 5

Sum 32 -> 4

Sum 33 -> 4

Sum 34 -> 3

Sum 35 -> 3

Sum 36 -> 2

Sum 37 -> 2

Sum 38 -> 1

Sum 39 -> 1

Sum 3 can be formed by numbers: 1 2

Sum 4 can be formed by numbers: 1 3

Sum 5 can be formed by numbers: 1 4 2 3

Sum 6 can be formed by numbers: 1 5 2 4

Sum 7 can be formed by numbers: 1 6 2 5 3 4

Sum 8 can be formed by numbers: 1 7 2 6 3 5

Sum 9 can be formed by numbers: 1 8 2 7 3 6 4 5

Sum 10 can be formed by numbers: 1 9 2 8 3 7 4 6

Sum 11 can be formed by numbers: 1 10 2 9 3 8 4 7 5 6

Sum 12 can be formed by numbers: 1 11 2 10 3 9 4 8 5 7

Sum 13 can be formed by numbers: 1 12 2 11 3 10 4 9 5 8 6 7

Sum 14 can be formed by numbers: 1 13 2 12 3 11 4 10 5 9 6 8

Sum 15 can be formed by numbers: 1 14 2 13 3 12 4 11 5 10 6 9 7 8

Sum 16 can be formed by numbers: 1 15 2 14 3 13 4 12 5 11 6 10 7 9

Sum 17 can be formed by numbers: 1 16 2 15 3 14 4 13 5 12 6 11 7 10 8 9

Sum 18 can be formed by numbers: 1 17 2 16 3 15 4 14 5 13 6 12 7 11 8 10

Sum 19 can be formed by numbers: 1 18 2 17 3 16 4 15 5 14 6 13 7 12 8 11 9 10

Sum 20 can be formed by numbers: 1 19 2 18 3 17 4 16 5 15 6 14 7 13 8 12 9 11

Sum 21 can be formed by numbers: 1 20 2 19 3 18 4 17 5 16 6 15 7 14 8 13 9 12 10 11

Sum 22 can be formed by numbers: 2 20 3 19 4 18 5 17 6 16 7 15 8 14 9 13 10 12

Sum 23 can be formed by numbers: 3 20 4 19 5 18 6 17 7 16 8 15 9 14 10 13 11 12

Sum 24 can be formed by numbers: 4 20 5 19 6 18 7 17 8 16 9 15 10 14 11 13

Sum 25 can be formed by numbers: 5 20 6 19 7 18 8 17 9 16 10 15 11 14 12 13

Sum 26 can be formed by numbers: 6 20 7 19 8 18 9 17 10 16 11 15 12 14

Sum 27 can be formed by numbers: 7 20 8 19 9 18 10 17 11 16 12 15 13 14

Sum 28 can be formed by numbers: 8 20 9 19 10 18 11 17 12 16 13 15

Sum 29 can be formed by numbers: 9 20 10 19 11 18 12 17 13 16 14 15

Sum 30 can be formed by numbers: 10 20 11 19 12 18 13 17 14 16

Sum 31 can be formed by numbers: 11 20 12 19 13 18 14 17 15 16

Sum 32 can be formed by numbers: 12 20 13 19 14 18 15 17

Sum 33 can be formed by numbers: 13 20 14 19 15 18 16 17

Sum 34 can be formed by numbers: 14 20 15 19 16 18

Sum 35 can be formed by numbers: 15 20 16 19 17 18

Sum 36 can be formed by numbers: 16 20 17 19

Sum 37 can be formed by numbers: 17 20 18 19

Sum 38 can be formed by numbers: 18 20

Sum 39 can be formed by numbers: 19 20

B的积

Product 2 -> 1

Product 3 -> 1

Product 4 -> 1

Product 5 -> 1

Product 6 -> 2

Product 7 -> 1

Product 8 -> 2

Product 9 -> 1

Product 10 -> 2

Product 11 -> 1

Product 12 -> 3

Product 13 -> 1

Product 14 -> 2

Product 15 -> 2

Product 16 -> 2

Product 17 -> 1

Product 18 -> 3

Product 19 -> 1

Product 20 -> 3

Product 21 -> 1

Product 22 -> 1

Product 24 -> 3

Product 26 -> 1

Product 27 -> 1

Product 28 -> 2

Product 30 -> 3

Product 32 -> 2

Product 33 -> 1

Product 34 -> 1

Product 35 -> 1

Product 36 -> 3

Product 38 -> 1

Product 39 -> 1

Product 40 -> 3

Product 42 -> 2

Product 44 -> 1

Product 45 -> 2

Product 48 -> 3

Product 50 -> 1

Product 51 -> 1

Product 52 -> 1

Product 54 -> 2

Product 55 -> 1

Product 56 -> 2

Product 57 -> 1

Product 60 -> 4

Product 63 -> 1

Product 64 -> 1

Product 65 -> 1

Product 66 -> 1

Product 68 -> 1

Product 70 -> 2

Product 72 -> 3

Product 75 -> 1

Product 76 -> 1

Product 77 -> 1

Product 78 -> 1

Product 80 -> 3

Product 84 -> 2

Product 85 -> 1

Product 88 -> 1

Product 90 -> 3

Product 91 -> 1

Product 95 -> 1

Product 96 -> 2

Product 98 -> 1

Product 99 -> 1

Product 100 -> 1

Product 102 -> 1

Product 104 -> 1

Product 105 -> 1

Product 108 -> 2

Product 110 -> 1

Product 112 -> 2

Product 114 -> 1

Product 117 -> 1

Product 119 -> 1

Product 120 -> 3

Product 126 -> 2

Product 128 -> 1

Product 130 -> 1

Product 132 -> 1

Product 133 -> 1

Product 135 -> 1

Product 136 -> 1

Product 140 -> 2

Product 143 -> 1

Product 144 -> 2

Product 150 -> 1

Product 152 -> 1

Product 153 -> 1

Product 154 -> 1

Product 156 -> 1

Product 160 -> 2

Product 162 -> 1

Product 165 -> 1

Product 168 -> 1

Product 170 -> 1

Product 171 -> 1

Product 176 -> 1

Product 180 -> 3

Product 182 -> 1

Product 187 -> 1

Product 190 -> 1

Product 192 -> 1

Product 195 -> 1

Product 198 -> 1

Product 200 -> 1

Product 204 -> 1

Product 208 -> 1

Product 209 -> 1

Product 210 -> 1

Product 216 -> 1

Product 220 -> 1

Product 221 -> 1

Product 224 -> 1

Product 228 -> 1

Product 234 -> 1

Product 238 -> 1

Product 240 -> 2

Product 247 -> 1

Product 252 -> 1

Product 255 -> 1

Product 260 -> 1

Product 266 -> 1

Product 270 -> 1

Product 272 -> 1

Product 280 -> 1

Product 285 -> 1

Product 288 -> 1

Product 300 -> 1

Product 304 -> 1

Product 306 -> 1

Product 320 -> 1

Product 323 -> 1

Product 340 -> 1

Product 342 -> 1

Product 360 -> 1

Product 380 -> 1

Product 2 can be formed by numbers: 1 2

Product 3 can be formed by numbers: 1 3

Product 4 can be formed by numbers: 1 4

Product 5 can be formed by numbers: 1 5

Product 6 can be formed by numbers: 1 6 2 3

Product 7 can be formed by numbers: 1 7

Product 8 can be formed by numbers: 1 8 2 4

Product 9 can be formed by numbers: 1 9

Product 10 can be formed by numbers: 1 10 2 5

Product 11 can be formed by numbers: 1 11

Product 12 can be formed by numbers: 1 12 2 6 3 4

Product 13 can be formed by numbers: 1 13

Product 14 can be formed by numbers: 1 14 2 7

Product 15 can be formed by numbers: 1 15 3 5

Product 16 can be formed by numbers: 1 16 2 8

Product 17 can be formed by numbers: 1 17

Product 18 can be formed by numbers: 1 18 2 9 3 6

Product 19 can be formed by numbers: 1 19

Product 20 can be formed by numbers: 1 20 2 10 4 5

Product 21 can be formed by numbers: 3 7

Product 22 can be formed by numbers: 2 11

Product 24 can be formed by numbers: 2 12 3 8 4 6

Product 26 can be formed by numbers: 2 13

Product 27 can be formed by numbers: 3 9

Product 28 can be formed by numbers: 2 14 4 7

Product 30 can be formed by numbers: 2 15 3 10 5 6

Product 32 can be formed by numbers: 2 16 4 8

Product 33 can be formed by numbers: 3 11

Product 34 can be formed by numbers: 2 17

Product 35 can be formed by numbers: 5 7

Product 36 can be formed by numbers: 2 18 3 12 4 9

Product 38 can be formed by numbers: 2 19

Product 39 can be formed by numbers: 3 13

Product 40 can be formed by numbers: 2 20 4 10 5 8

Product 42 can be formed by numbers: 3 14 6 7

Product 44 can be formed by numbers: 4 11

Product 45 can be formed by numbers: 3 15 5 9

Product 48 can be formed by numbers: 3 16 4 12 6 8

Product 50 can be formed by numbers: 5 10

Product 51 can be formed by numbers: 3 17

Product 52 can be formed by numbers: 4 13

Product 54 can be formed by numbers: 3 18 6 9

Product 55 can be formed by numbers: 5 11

Product 56 can be formed by numbers: 4 14 7 8

Product 57 can be formed by numbers: 3 19

Product 60 can be formed by numbers: 3 20 4 15 5 12 6 10

Product 63 can be formed by numbers: 7 9

Product 64 can be formed by numbers: 4 16

Product 65 can be formed by numbers: 5 13

Product 66 can be formed by numbers: 6 11

Product 68 can be formed by numbers: 4 17

Product 70 can be formed by numbers: 5 14 7 10

Product 72 can be formed by numbers: 4 18 6 12 8 9

Product 75 can be formed by numbers: 5 15

Product 76 can be formed by numbers: 4 19

Product 77 can be formed by numbers: 7 11

Product 78 can be formed by numbers: 6 13

Product 80 can be formed by numbers: 4 20 5 16 8 10

Product 84 can be formed by numbers: 6 14 7 12

Product 85 can be formed by numbers: 5 17

Product 88 can be formed by numbers: 8 11

Product 90 can be formed by numbers: 5 18 6 15 9 10

Product 91 can be formed by numbers: 7 13

Product 95 can be formed by numbers: 5 19

Product 96 can be formed by numbers: 6 16 8 12

Product 98 can be formed by numbers: 7 14

Product 99 can be formed by numbers: 9 11

Product 100 can be formed by numbers: 5 20

Product 102 can be formed by numbers: 6 17

Product 104 can be formed by numbers: 8 13

Product 105 can be formed by numbers: 7 15

Product 108 can be formed by numbers: 6 18 9 12

Product 110 can be formed by numbers: 10 11

Product 112 can be formed by numbers: 7 16 8 14

Product 114 can be formed by numbers: 6 19

Product 117 can be formed by numbers: 9 13

Product 119 can be formed by numbers: 7 17

Product 120 can be formed by numbers: 6 20 8 15 10 12

Product 126 can be formed by numbers: 7 18 9 14

Product 128 can be formed by numbers: 8 16

Product 130 can be formed by numbers: 10 13

Product 132 can be formed by numbers: 11 12

Product 133 can be formed by numbers: 7 19

Product 135 can be formed by numbers: 9 15

Product 136 can be formed by numbers: 8 17

Product 140 can be formed by numbers: 7 20 10 14

Product 143 can be formed by numbers: 11 13

Product 144 can be formed by numbers: 8 18 9 16

Product 150 can be formed by numbers: 10 15

Product 152 can be formed by numbers: 8 19

Product 153 can be formed by numbers: 9 17

Product 154 can be formed by numbers: 11 14

Product 156 can be formed by numbers: 12 13

Product 160 can be formed by numbers: 8 20 10 16

Product 162 can be formed by numbers: 9 18

Product 165 can be formed by numbers: 11 15

Product 168 can be formed by numbers: 12 14

Product 170 can be formed by numbers: 10 17

Product 171 can be formed by numbers: 9 19

Product 176 can be formed by numbers: 11 16

Product 180 can be formed by numbers: 9 20 10 18 12 15

Product 182 can be formed by numbers: 13 14

Product 187 can be formed by numbers: 11 17

Product 190 can be formed by numbers: 10 19

Product 192 can be formed by numbers: 12 16

Product 195 can be formed by numbers: 13 15

Product 198 can be formed by numbers: 11 18

Product 200 can be formed by numbers: 10 20

Product 204 can be formed by numbers: 12 17

Product 208 can be formed by numbers: 13 16

Product 209 can be formed by numbers: 11 19

Product 210 can be formed by numbers: 14 15

Product 216 can be formed by numbers: 12 18

Product 220 can be formed by numbers: 11 20

Product 221 can be formed by numbers: 13 17

Product 224 can be formed by numbers: 14 16

Product 228 can be formed by numbers: 12 19

Product 234 can be formed by numbers: 13 18

Product 238 can be formed by numbers: 14 17

Product 240 can be formed by numbers: 12 20 15 16

Product 247 can be formed by numbers: 13 19

Product 252 can be formed by numbers: 14 18

Product 255 can be formed by numbers: 15 17

Product 260 can be formed by numbers: 13 20

Product 266 can be formed by numbers: 14 19

Product 270 can be formed by numbers: 15 18

Product 272 can be formed by numbers: 16 17

Product 280 can be formed by numbers: 14 20

Product 285 can be formed by numbers: 15 19

Product 288 can be formed by numbers: 16 18

Product 300 can be formed by numbers: 15 20

Product 304 can be formed by numbers: 16 19

Product 306 can be formed by numbers: 17 18

Product 320 can be formed by numbers: 16 20

Product 323 can be formed by numbers: 17 19

Product 340 can be formed by numbers: 17 20

Product 342 can be formed by numbers: 18 19

Product 360 can be formed by numbers: 18 20

Product 380 can be formed by numbers: 19 20

进一步推理

假设:A知道A=5;x、y的组合 1-4、2-3;

B知道为B=6; 则x、y的组和1-6 、2-3;

A推断:A=5 若x、y为1-4 ;则B=4,且仅有一组,无重复项组合 ——pass

A=5时,仅有x、y为2-3 时,B=6, 有>=2的重复项组合

有一个核心点,A说不知道,B说不知道,A说知道,表明,这个值已经可以确定唯一。

如:A=26; x、y的值:6-20, 7- 19, 8-18, 9 -17, 10- 16, 11 -15, 12- 14;

以6-20为例,B=120;

当B=120,x、y的值为 6-20, 8- 15, 10- 12;

则6-20满足前提条件;

以7-19为例, B=153;

当B=153,x、y的值只能为 9-17;

则7-19不满足前提条件;

以8-18为例,B=144;

当B=144,x、y的值为8-18,9-16;

则8-18也满足前提条件

...........................

当有多个满足前提条件,也无法满足“唯一确定”及"B说不知道,为什么A说自己知道了?"所有要排除A=26;以此类推。

总结

本人未一 一具体演算,总体思路大概如此。

据搜索得知,组合结果为:2,3,2,4,9,20 三组。

c++代码

#include <iostream>
#include <vector>
#include <map>

using namespace std;

int main() {
    vector<int> numbers(20);
    for (int i = 0; i < 20; ++i) {
        numbers[i] = i + 1;
    }

    // 记录每个和与积出现的次数
    map<int, vector<int> > sumFrequencies;
    map<int, vector<int> > productFrequencies;

    for (int i = 0; i < 19; ++i) {
        for (int j = i + 1; j < 20; ++j) {
            int sum = numbers[i] + numbers[j];
            int product = numbers[i] * numbers[j];
            sumFrequencies[sum].push_back(i);
            sumFrequencies[sum].push_back(j);
            productFrequencies[product].push_back(i);
            productFrequencies[product].push_back(j);
        }
    }

    // 打印每个和与积的出现次数
    for (map<int, vector<int> >::iterator it = sumFrequencies.begin(); it != sumFrequencies.end(); ++it) {
        if (it->second.size() > 1) {
            cout << "Sum " << it->first << " can be formed by numbers: ";
            for (int num = 0; num < it->second.size(); ++num) {
                cout << numbers[it->second[num]] << " ";
            }
            cout << endl;
        }
    }

    for (map<int, vector<int> >::iterator it = productFrequencies.begin(); it != productFrequencies.end(); ++it) {
        if (it->second.size() > 1) {
            cout << "Product " << it->first << " can be formed by numbers: ";
            for (int num = 0; num < it->second.size(); ++num) {
                cout << numbers[it->second[num]] << " ";
            }
            cout << endl;
        }
    }

    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值