- 主题:这种类型的题有解答思路吗, 除了穷举
完全没思路

--
FROM 114.246.102.*
我没办法, 写了个程序暴力计算, 有 224 个组合满足条件, 孩子怎么也算不过来啊..............
zylthinking@linux:~$ ./a.out | wc -l
224
zylthinking@linux:~$ ./a.out
x = 10245, y = 86379
x = 10249, y = 86375
x = 10275, y = 86349
x = 10279, y = 86345
x = 10345, y = 86279
x = 10349, y = 86275
x = 10375, y = 86249
x = 10379, y = 86245
x = 12650, y = 83974
x = 12654, y = 83970
x = 12670, y = 83954
x = 12674, y = 83950
x = 12950, y = 83674
x = 12954, y = 83670
x = 12970, y = 83654
x = 12974, y = 83650
x = 13650, y = 82974
--
FROM 114.246.102.*
就是看进位关系吧?
【 在 zylthinking2 的大作中提到: 】
: 完全没思路
: [upload=1][/upload]
--
FROM 112.10.133.*
第一问比较好答
0+1 ...+9=45
9 +6 +6 +2 +4=27
进位一次,数字的和会减少9。所以进位2次。
第二问要找最小的,暂时只能想到从10234开始试了,距离你程序跑出来的正确答案,只用试几次就出来了(10234 10235 10236 10237 10238 10239 10243 10245,一共八个数)。也不是不行。
【 在 zylthinking2 的大作中提到: 】
: 完全没思路
:
: [upload][/upload]
: --
:
发自「今日水木 on Android」
--
修改:wudashu FROM 123.118.5.*
FROM 123.118.5.*
优化一下,这个题我能想到两个解法。
解法一: 费脑子
问1.
0+1 ...+9=45
9 +6 +6 +2 +4=27
进位一次,数字的和会减少9。所以进位2次。
问2.
把暴力算法稍微优化一下
上面要最小,那进位尽可能靠后。少字是1的情况,那老字是8;壮是0,大是5(后面进位)或者6(后面不进位);不字是2,徒是4(不进位)或者是3(后面进位),故大字可取6;努字3得进位,和徒冲突,努字取4,徒字取3,伤取8(后面不进位)或者7(后面进位);力取5,悲取9,都不冲突,所以10245
解法二: 无脑
先做第二问
从小到大构造数,暴力计算 10234 10235 10236 10237 10238 10239 10243 10245一共八个数,很快就找到10245
再做第一问
既然直接问了进位几次,肯定全部答案都一样,那么10245进位2次,所以填2。
【 在 zylthinking2 的大作中提到: 】
: 完全没思路
:
: [upload][/upload]
: --
:
发自「今日水木 on Android」
--
FROM 123.118.5.*
1、0+..+9=45
每出现一次进位,相当于总和去掉10-1=9
9+6+6+2+4=27
(45-27)/9=2
因此进位2次
2、观察到和的后四位都是偶数,考虑最小情况,尝试1作为首位,下面配8,剩下4个奇数
(如果首位是1、7,剩余3个奇数,则千位必须进位,3+5=8没出现在和中,因此千位不会出现9,不可能求和得到16)
不可能直接出现奇+偶的情况,要用掉奇数,必须先是奇+奇,如果奇+奇不进位,那么另一组奇必须配奇,而剩余奇数3\5\7\9两两配对,必然会出现至少一组进位,因此考虑奇+奇进位,进位后必然要配奇来使和为偶数,但是这样只用了3个奇数,所以还要进位,所以中间出现下面的形式:
奇奇奇
偶偶奇
---------
偶偶偶
尝试10开头,下面配86或者85,
如果86不进位,那么个位必须奇+奇进位,十位奇+偶进位,百位奇+偶不进位。
个位和为4,只能5+9=14
十位和为2,12-1=11,只能4+7=11
百位是剩余的3+1+2=6
因此 10375+86249 是可行解
考虑到同一位数可以上下交换,因此10245+86379 满足条件,10245应该是最优解。
【 在 zylthinking2 的大作中提到: 】
: 完全没思路
:
: [upload=1][/upload]
: ...................
--
修改:thierryhenry FROM 123.113.226.*
FROM 123.113.226.*
考虑到每个解的每一个对应位都能互换,所以224要除以2^5,所以其实答案也就7个,是可以分情况讨论出来的,思路清晰的话花的时间也还好
【 在 zylthinking2 的大作中提到: 】
:
: 我没办法, 写了个程序暴力计算, 有 224 个组合满足条件, 孩子怎么也算不过来啊..............
:
: zylthinking@linux:~$ ./a.out | wc -l
: 224
--
FROM 117.136.40.*
先看倒数第二位,和为2,假定没进位,那肯定是0和1且后面有进位;刨去0,1之后,最后一位和为4,而且有进位,那只可能是5,9或6,8。假设是5,9,你会发现后面凑不出两对和为6的值,所以只能是6,8,然后第2,3位的俩6只有2,4以及7,9(2,4在后),或2,3及7,9(7,9在后),由此得到2组解(每一位都是更小的数在前面):
37206 + 59418
42706 + 53918
倒数第二位如果有进位,那就是5,7,4,8,3,9(最后一位没进位)或5,6,4,7,3,8,2,9(最后一位有进位),类似上面依次分情况讨论,又可以得到5组解:
12650 + 83974
27041 + 69583
20641 + 75983
10245 + 86379
20135 + 76489
比较一下,就能得到第二问答案是10245
【 在 zylthinking2 的大作中提到: 】
:
: 完全没思路
:
--
FROM 117.136.40.*