作者myflame (是否继续堕落)
看板IMO_Taiwan
标题Re: [问题] IMO 2013 in Colombia Day 1
时间Wed Jul 31 00:03:54 2013
※ 引述《FAlin (FA(バルシェ应援))》之铭言:
: 1. Prove that for any two positive integers k , n there exist positive
: integers m_1 , m_2 , ... , m_k such that
: 2^k - 1 1 1 1
: 1 + ------- = ( 1 + --- )( 1 + --- )...( 1 + --- ) .
: n m_1 m_2 m_k
怕看到其他解答会受到影响 所以没看直接回一篇
如果解答有重复请见谅
(防雷页)
想法: 考虑一严格递增数列 令 a_1 = n , a_(k+1) = ( n + 2^k - 1 )
右边想办法配成 ( a_2 / a_1 ) * ( a_3 / a_2 ) ... ( a_(k+1) / a_k )
然後各项约分後要成功变成 ( ( m_i + 1 ) / m_i )
关键: a_(k+1) - a_1 = 2^k - 1 = 1 + 2 + 4 + ... + 2^(k-1) 刚好有k个数
可以拿来分配给 ( a_(i+1) - a_i ) , i = 1,2,...,k
解法: 考虑一严格递增数列 <a_i> 令 a_1 = n , a_(k+1) = ( n + 2^k - 1 )
令集合 P = { x | x为1~k之间的整数 , 且 a_(k+1) 写成二进位的第x位为1 }
Q = { x | x为1~k之间的整数 , 且 a_(k+1) 写成二进位的第x位为0 }
将 P 当中的元素递增排序 p_1 , p_2 , ... p_s
Q 当中的元素递增排序 q_1 , q_2 , ... q_t (显然s+t=k)
则令 a_k = a_(k+1) - 2^(p_1 - 1) , a_(k-1) = a_k - 2^(p_2 - 1)
...(依序减下去) , a_(k-s+1) = a_(k-s+2) - 2^(p_s - 1)
然後 a_(k-s) = a_t = a_(t+1) - 2^(q_t - 1) ,
a_(t-1) = a_t - 2^(q_(t-1) - 1) , ...
a_2 = a_3 - 2^(q_2 - 1) , a_1 = a_2 - 2^(q_1 - 1)
首先 P 跟 Q 当中的元素合起来是正整数 1~k ,所以这样一路减下来
1, 2, ... 2^(k-1) 各减一次 a_1 会回到 n 无误
接着检查 a_(i+1) / a_i 约分到最简的状况 :
(I) 若 i 介於 k 到 k-s+1 之间,
因为 a_(i+1) 恰为 2^(p_(k-i+1) - 1) 的倍数, 而非 2^(p_(k-i+1)) 的倍数
所以 a_(i+1) / a_i 上下约掉 2^(p_(k-i+1) - 1) 後, 分子恰比分母多1
(II) 若 i 介於 k-s 到 1 之间, 也就是 t 到 1 之间
因为 a_i 恰为 2^(q_i - 1) 的倍数, 而非 2^(q_i) 的倍数
所以 a_(i+1) / a_i 上下约掉 2^(q_i - 1) 後, 分子也恰比分母多1
故依此构造法 对於所有的 k 跟 n, 相对应的 m_1 , ... , m_k 存在 #
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 123.194.225.84