逆问题--给定一个自然数N,寻找一个M,使得M是N的倍数,M是由0和1组成的十进制数 [推荐]

bigc2000 2009-08-13 10:20:24
给定一个自然数N,寻找一个M,使得M是N的倍数,M是由0和1组成的十进制数 [推荐]

--------------------------------------
这个题目的逆问题

假定给定0,1串(10进制)M,求其因子,使得这个因子的最小由,0,1构成的串倍数 恰为M
,同时满足这个因子,是其所有因子中最小.

比如10 --> 1,2,5 ,10,
1的最小倍数是1,
2的最小倍数是10,故2是正确的

100
则为4
111 则为3


这个问题,比原问题难么?
(看起来很简单,但是,分解因数,本身就已经困难,





...全文
256 点赞 收藏 10
写回复
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
spirit_sheng 2009-08-19
[Quote=引用 9 楼 fire_woods 的回复:]
1. 题目表述的很晦涩难懂,结合例子勉强看懂.
2. 这个题目不能算是原来那个题目的逆问题,最多算是个扩展问题.
3. 问题本身有点无聊.
4. 推荐是假的.
[/Quote]

支持,我现在仔细看了看,才看懂楼主的意思
回复
fire_woods 2009-08-18
1. 题目表述的很晦涩难懂,结合例子勉强看懂.
2. 这个题目不能算是原来那个题目的逆问题,最多算是个扩展问题.
3. 问题本身有点无聊.
4. 推荐是假的.
回复
spirit_sheng 2009-08-18
这道题根本不需要因数分解

给定一个自然数N,寻找一个M,使得M是N的倍数,M是由0和1组成的十进制数

我们设定一个函数 f(N, x)=y,则y全由0和1组成的十进制数,且y除以N的余数为x

思路如下,比如N=7
考虑个位 1 mod 7 = 1, 所以,f(7,1)=1
考虑十位 10 mod 7 = 3, 所以, f(7,3)=10, f(7,4)=11
考虑百位 100 mod 7 = 30 mod 7 = 2, 所以, f(7,2) = 100, f(7,5)=110, f(7,6) = 111
考虑千位 1000 mod 7 = 20 mod 7 = 6, 所以 f(7,0) = 1001


回复
gumbour 2009-08-14
shellcoder 我挺替你丢人的
回复
adfas 2009-08-13
话说,偶突然发现和你耍嘴皮子是一种对偶的侮辱。水平够格了再耍吧
你慢慢折腾吧,不送。嘎嘎
回复
bigc2000 2009-08-13
这还不可悲么?膜拜,知道膜拜的意思么?

你根深蒂固的想法,这就是可悲的根源,

我认为我不可悲,不是我水平菜不菜,而是我知道,寻找别人的优点也尽量去了解自己缺点,你是做不到的,这就是你的可悲之处.
回复
adfas 2009-08-13
可不可悲其实也不是你说了算。
话又说回来了,这种问题都折腾你个半死,貌似你比较不可悲。

偶自然有膜拜的强人,也自然有鄙视的菜鸟
回复
bigc2000 2009-08-13
呵呵,你说话好像很不客气,年轻人,不要总以为自己了不起,这样的人是可悲的...

我只是觉得这个问题的逆问题,应该更难,而不是更简单.
至于,你读的懂读不懂,呵呵,那是你的事情,我又没有资格,是我的事情
回复
adfas 2009-08-13
楼主的水平够资格出题么。我没看懂
回复
发动态
发帖子
数据结构与算法
创建于2007-08-27

3.2w+

社区成员

数据结构与算法相关内容讨论专区
申请成为版主
社区公告
暂无公告