x*5
2 楼
比较迷糊,问问大家的情况,如果能拿需要怎么操作?
谢谢了
谢谢了
c*2
3 楼
【 以下文字转载自 Joke 讨论区 】
发信人: J202001 (欠20), 信区: Joke
标 题: 邪恶的闺女写的诗 (转载)
发信站: BBS 未名空间站 (Wed Dec 14 05:44:39 2011, 美东)
发信人: Songp (MathTutor), 信区: Sex
标 题: 邪恶的闺女写的诗 (转载)
发信站: BBS 未名空间站 (Wed Dec 14 05:13:00 2011, 美东)
发信人: LaserJet (LaserJet), 信区: Memory
标 题: 邪恶的闺女写的诗 (转载)
发信站: BBS 未名空间站 (Sun Dec 11 04:09:01 2011, 美东)
发信人: at2009 (酱油兄), 信区: Fishing
标 题: 邪恶的闺女写的诗
发信站: BBS 未名空间站 (Sat Dec 10 14:36:03 2011, 美东)
俺叫她写中文,这就是她给俺的。
失败呀。无言。
发信人: J202001 (欠20), 信区: Joke
标 题: 邪恶的闺女写的诗 (转载)
发信站: BBS 未名空间站 (Wed Dec 14 05:44:39 2011, 美东)
发信人: Songp (MathTutor), 信区: Sex
标 题: 邪恶的闺女写的诗 (转载)
发信站: BBS 未名空间站 (Wed Dec 14 05:13:00 2011, 美东)
发信人: LaserJet (LaserJet), 信区: Memory
标 题: 邪恶的闺女写的诗 (转载)
发信站: BBS 未名空间站 (Sun Dec 11 04:09:01 2011, 美东)
发信人: at2009 (酱油兄), 信区: Fishing
标 题: 邪恶的闺女写的诗
发信站: BBS 未名空间站 (Sat Dec 10 14:36:03 2011, 美东)
俺叫她写中文,这就是她给俺的。
失败呀。无言。
D*e
4 楼
【 以下文字转载自 Dreamer 讨论区 】
发信人: Dreamer (不要问我从哪里来), 信区: Dreamer
标 题: 丁香和西狼的事儿果然是真的
发信站: BBS 未名空间站 (Tue Sep 29 01:29:20 2009, 美东)
看这个:http://www.mitbbs.com/article_t/WaterWorld/59483.html
发信人: crazyman (嘉天之锡), 信区: SanDiego
标 题: 我室友昨晚醉酒,差点送了命
发信站: BBS 未名空间站 (Sun Aug 9 13:07:52 2009, 美东)
发信人: stormwind100 ( 风), 信区: Family
标 题: 我室友昨晚醉酒,差点送了命
发信站: BBS 未名空间站 (Fri Aug 7 11:14:32 2009, 美东)
我来MIT,很少发帖子,长期潜水员。发这个,不知道会不会上十大。
真的不能相信昨晚发生的事情,我从小到大,都没有这么惊心动魄的经历。现在心都觉
得在跳个不停,真的不能想象她可能会死。我也算救了我室友的命,我妈说胜造七级浮
屠,我也不知
发信人: Dreamer (不要问我从哪里来), 信区: Dreamer
标 题: 丁香和西狼的事儿果然是真的
发信站: BBS 未名空间站 (Tue Sep 29 01:29:20 2009, 美东)
看这个:http://www.mitbbs.com/article_t/WaterWorld/59483.html
发信人: crazyman (嘉天之锡), 信区: SanDiego
标 题: 我室友昨晚醉酒,差点送了命
发信站: BBS 未名空间站 (Sun Aug 9 13:07:52 2009, 美东)
发信人: stormwind100 ( 风), 信区: Family
标 题: 我室友昨晚醉酒,差点送了命
发信站: BBS 未名空间站 (Fri Aug 7 11:14:32 2009, 美东)
我来MIT,很少发帖子,长期潜水员。发这个,不知道会不会上十大。
真的不能相信昨晚发生的事情,我从小到大,都没有这么惊心动魄的经历。现在心都觉
得在跳个不停,真的不能想象她可能会死。我也算救了我室友的命,我妈说胜造七级浮
屠,我也不知
x*z
5 楼
应该很简单,自己也能想出解决办法,但是肯定不是最优的,想找个
最优解。问题就是展开如下的range,变成一个sequence。
[0-3,4,8-9],13,[102-103,150],1000,...
-》
[0,1,2,3,4,8,9,13,102,103,150,1000,...]
我现在的想法就是先去匹配[],把[]全提出来后再按','去split,
然后再分别处理[]里面的内容,这样太复杂了,有什么简单办法么?
最优解。问题就是展开如下的range,变成一个sequence。
[0-3,4,8-9],13,[102-103,150],1000,...
-》
[0,1,2,3,4,8,9,13,102,103,150,1000,...]
我现在的想法就是先去匹配[],把[]全提出来后再按','去split,
然后再分别处理[]里面的内容,这样太复杂了,有什么简单办法么?
p*j
6 楼
RT
n*w
7 楼
印?
a*7
9 楼
牛啊!以后是大诗人吧!
D*e
10 楼
这伏笔埋得也太多了吧?
看来就算知道了kx收到的那个嗔怪来自哪个ID,也没啥意义了
复。
【在 D*****e 的大作中提到】
: 【 以下文字转载自 Dreamer 讨论区 】
: 发信人: Dreamer (不要问我从哪里来), 信区: Dreamer
: 标 题: 丁香和西狼的事儿果然是真的
: 发信站: BBS 未名空间站 (Tue Sep 29 01:29:20 2009, 美东)
: 看这个:http://www.mitbbs.com/article_t/WaterWorld/59483.html
: 发信人: crazyman (嘉天之锡), 信区: SanDiego
: 标 题: 我室友昨晚醉酒,差点送了命
: 发信站: BBS 未名空间站 (Sun Aug 9 13:07:52 2009, 美东)
: 发信人: stormwind100 ( 风), 信区: Family
: 标 题: 我室友昨晚醉酒,差点送了命
看来就算知道了kx收到的那个嗔怪来自哪个ID,也没啥意义了
复。
【在 D*****e 的大作中提到】
: 【 以下文字转载自 Dreamer 讨论区 】
: 发信人: Dreamer (不要问我从哪里来), 信区: Dreamer
: 标 题: 丁香和西狼的事儿果然是真的
: 发信站: BBS 未名空间站 (Tue Sep 29 01:29:20 2009, 美东)
: 看这个:http://www.mitbbs.com/article_t/WaterWorld/59483.html
: 发信人: crazyman (嘉天之锡), 信区: SanDiego
: 标 题: 我室友昨晚醉酒,差点送了命
: 发信站: BBS 未名空间站 (Sun Aug 9 13:07:52 2009, 美东)
: 发信人: stormwind100 ( 风), 信区: Family
: 标 题: 我室友昨晚醉酒,差点送了命
X*r
11 楼
What []s are for? i.e. what's the difference between
[1,2],3 and 1,2,3?
【在 x*z 的大作中提到】
: 应该很简单,自己也能想出解决办法,但是肯定不是最优的,想找个
: 最优解。问题就是展开如下的range,变成一个sequence。
: [0-3,4,8-9],13,[102-103,150],1000,...
: -》
: [0,1,2,3,4,8,9,13,102,103,150,1000,...]
: 我现在的想法就是先去匹配[],把[]全提出来后再按','去split,
: 然后再分别处理[]里面的内容,这样太复杂了,有什么简单办法么?
[1,2],3 and 1,2,3?
【在 x*z 的大作中提到】
: 应该很简单,自己也能想出解决办法,但是肯定不是最优的,想找个
: 最优解。问题就是展开如下的range,变成一个sequence。
: [0-3,4,8-9],13,[102-103,150],1000,...
: -》
: [0,1,2,3,4,8,9,13,102,103,150,1000,...]
: 我现在的想法就是先去匹配[],把[]全提出来后再按','去split,
: 然后再分别处理[]里面的内容,这样太复杂了,有什么简单办法么?
G*s
13 楼
牛作
【在 c*********2 的大作中提到】
: 【 以下文字转载自 Joke 讨论区 】
: 发信人: J202001 (欠20), 信区: Joke
: 标 题: 邪恶的闺女写的诗 (转载)
: 发信站: BBS 未名空间站 (Wed Dec 14 05:44:39 2011, 美东)
: 发信人: Songp (MathTutor), 信区: Sex
: 标 题: 邪恶的闺女写的诗 (转载)
: 发信站: BBS 未名空间站 (Wed Dec 14 05:13:00 2011, 美东)
: 发信人: LaserJet (LaserJet), 信区: Memory
: 标 题: 邪恶的闺女写的诗 (转载)
: 发信站: BBS 未名空间站 (Sun Dec 11 04:09:01 2011, 美东)
【在 c*********2 的大作中提到】
: 【 以下文字转载自 Joke 讨论区 】
: 发信人: J202001 (欠20), 信区: Joke
: 标 题: 邪恶的闺女写的诗 (转载)
: 发信站: BBS 未名空间站 (Wed Dec 14 05:44:39 2011, 美东)
: 发信人: Songp (MathTutor), 信区: Sex
: 标 题: 邪恶的闺女写的诗 (转载)
: 发信站: BBS 未名空间站 (Wed Dec 14 05:13:00 2011, 美东)
: 发信人: LaserJet (LaserJet), 信区: Memory
: 标 题: 邪恶的闺女写的诗 (转载)
: 发信站: BBS 未名空间站 (Sun Dec 11 04:09:01 2011, 美东)
c*r
14 楼
哇,这个贴也是看过的,原来有这么多枝枝蔓蔓,都指向同一个根呀。
【在 D*****e 的大作中提到】
: 【 以下文字转载自 Dreamer 讨论区 】
: 发信人: Dreamer (不要问我从哪里来), 信区: Dreamer
: 标 题: 丁香和西狼的事儿果然是真的
: 发信站: BBS 未名空间站 (Tue Sep 29 01:29:20 2009, 美东)
: 看这个:http://www.mitbbs.com/article_t/WaterWorld/59483.html
: 发信人: crazyman (嘉天之锡), 信区: SanDiego
: 标 题: 我室友昨晚醉酒,差点送了命
: 发信站: BBS 未名空间站 (Sun Aug 9 13:07:52 2009, 美东)
: 发信人: stormwind100 ( 风), 信区: Family
: 标 题: 我室友昨晚醉酒,差点送了命
【在 D*****e 的大作中提到】
: 【 以下文字转载自 Dreamer 讨论区 】
: 发信人: Dreamer (不要问我从哪里来), 信区: Dreamer
: 标 题: 丁香和西狼的事儿果然是真的
: 发信站: BBS 未名空间站 (Tue Sep 29 01:29:20 2009, 美东)
: 看这个:http://www.mitbbs.com/article_t/WaterWorld/59483.html
: 发信人: crazyman (嘉天之锡), 信区: SanDiego
: 标 题: 我室友昨晚醉酒,差点送了命
: 发信站: BBS 未名空间站 (Sun Aug 9 13:07:52 2009, 美东)
: 发信人: stormwind100 ( 风), 信区: Family
: 标 题: 我室友昨晚醉酒,差点送了命
i*l
16 楼
你们这些白砖!
现在是社会主义大跃进! 要相信党,相信群众,相信胡主席!
只要广大人民群众能够用马列主义,毛泽东思想和带三个表的伟大思想武装自己,能够
在党员干部的带领下艰苦奋斗,那么最终胜利一定属于中国人民!
三万亿算什么?三座大山我们都推翻了!现在形势不是小好,是大好!
凡事对社会主义大跃进持怀疑态度的,都是反洞穴数权威,现行反革命!
现在是社会主义大跃进! 要相信党,相信群众,相信胡主席!
只要广大人民群众能够用马列主义,毛泽东思想和带三个表的伟大思想武装自己,能够
在党员干部的带领下艰苦奋斗,那么最终胜利一定属于中国人民!
三万亿算什么?三座大山我们都推翻了!现在形势不是小好,是大好!
凡事对社会主义大跃进持怀疑态度的,都是反洞穴数权威,现行反革命!
p*n
19 楼
这卫星放的。。。。千户来了估计要办云南省14天。
X*r
21 楼
It is very easy if we just ignore '[]'s:
import re
re.sub('(\d+)-(\d+)', lambda m: ','.join(map(str, range(int(m.group(1)), int
(m.group(2))+1))), '[0-3,4,8-9],13,[102-103,150],1000', 0).replace('[', '').
replace(']', '')
【在 M*P 的大作中提到】
: there is no difference in the example,just remove [] and split by , and
: match -
import re
re.sub('(\d+)-(\d+)', lambda m: ','.join(map(str, range(int(m.group(1)), int
(m.group(2))+1))), '[0-3,4,8-9],13,[102-103,150],1000', 0).replace('[', '').
replace(']', '')
【在 M*P 的大作中提到】
: there is no difference in the example,just remove [] and split by , and
: match -
n*w
22 楼
据说武汉一个市就准备投1.1万亿,不知道又该关小黑屋多少天?
s*x
25 楼
可能是贪官良心发现把以前贪的都捐了出来。
D*e
28 楼
有趣的是,看gongmi, stormwind100在发爆料帖子之前的表现。
当westwolf刚刚“登陆美国”,在waterworld大叫,媳妇跟你说说俺的心里话
gongmi这个刚注册的ID正在waterworld疯狂积攒文章数,并没有跟西狼有对话交集
而stormwind100这个ID的角色扮演,似乎也经过了几番调整
waterworld
【在 D*****e 的大作中提到】
: 丁香坑:PieBridge版,ID: whitelilac
: 西狼坑:love, sex, waterworld... ID: westwolf
: 第三者爆料坑,现在越冒越多,代表各方观点的“朋友”都在爆料。大都在waterworld
: , 我摘要里说的ID是gongmi, 文章#25308
: 还有stormwind100, #25514
当westwolf刚刚“登陆美国”,在waterworld大叫,媳妇跟你说说俺的心里话
gongmi这个刚注册的ID正在waterworld疯狂积攒文章数,并没有跟西狼有对话交集
而stormwind100这个ID的角色扮演,似乎也经过了几番调整
waterworld
【在 D*****e 的大作中提到】
: 丁香坑:PieBridge版,ID: whitelilac
: 西狼坑:love, sex, waterworld... ID: westwolf
: 第三者爆料坑,现在越冒越多,代表各方观点的“朋友”都在爆料。大都在waterworld
: , 我摘要里说的ID是gongmi, 文章#25308
: 还有stormwind100, #25514
j*k
35 楼
How to convert [1,2,3,4,5,6, 7,10, 15,17,19,21] to
'1-8, 10, 15-23-2'?
Thanks
'1-8, 10, 15-23-2'?
Thanks
p*o
37 楼
def parse( s ) :
result = ''
lst = [ eval(i) for i in s[1:-1].split(', ') ]
head, p0 = lst[0], lst[1]
diff0 = p0 - head
flag = True
num_consecutives = 2
for p in lst[2:] :
if not flag :
flag = True
diff0 = p - p0
p0 = p
continue
diff = p - p0
if flag and diff0 <> diff :
if 2 == num_consecutives :
ss = str(head)
head = p0
diff0 = p - p0
else:
ss = str(head) + '-' + str(p0)
if 1 <> diff0 :
ss += '-' + str(diff0)
head = p
flag = False
num_consecutives = 2
result += ss + ', '
else:
num_consecutives += 1
p0 = p
#end_for
if 2 == num_consecutives :
ss = str(head)
else:
ss = str(head) + '-' + str(p0)
if 1 <> diff0 :
ss += '-' + str(diff0)
result += ss
return result
if __name__ == '__main__' :
ss = ['[1, 2, 3, 4, 5, 6, 7, 10, 15, 17, 19, 21]',\
'[1, 3, 4, 5, 6, 7, 10, 15, 17, 19, 21, 24]',\
'[1, 3, 5, 6, 7, 10, 12, 15, 17, 19, 21, 24, 27, 30]' ]
for s in ss :
print( s )
print( parse( s ) )
[1, 2, 3, 4, 5, 6, 7, 10, 15, 17, 19, 21]
1-7, 10, 15-21-2
[1, 3, 4, 5, 6, 7, 10, 15, 17, 19, 21, 24]
1, 3-7, 10, 15-21-2, 24
[1, 3, 5, 6, 7, 10, 12, 15, 17, 19, 21, 24, 27, 30]
1-5-2, 6, 7, 10, 12, 15-21-2, 24-30-3
【在 j*****k 的大作中提到】
: How to convert [1,2,3,4,5,6, 7,10, 15,17,19,21] to
: '1-8, 10, 15-23-2'?
: Thanks
x*z
38 楼
应该很简单,自己也能想出解决办法,但是肯定不是最优的,想找个
最优解。问题就是展开如下的range,变成一个sequence。
[0-3,4,8-9],13,[102-103,150],1000,...
-》
[0,1,2,3,4,8,9,13,102,103,150,1000,...]
我现在的想法就是先去匹配[],把[]全提出来后再按','去split,
然后再分别处理[]里面的内容,这样太复杂了,有什么简单办法么?
最优解。问题就是展开如下的range,变成一个sequence。
[0-3,4,8-9],13,[102-103,150],1000,...
-》
[0,1,2,3,4,8,9,13,102,103,150,1000,...]
我现在的想法就是先去匹配[],把[]全提出来后再按','去split,
然后再分别处理[]里面的内容,这样太复杂了,有什么简单办法么?
X*r
39 楼
What []s are for? i.e. what's the difference between
[1,2],3 and 1,2,3?
【在 x*z 的大作中提到】
: 应该很简单,自己也能想出解决办法,但是肯定不是最优的,想找个
: 最优解。问题就是展开如下的range,变成一个sequence。
: [0-3,4,8-9],13,[102-103,150],1000,...
: -》
: [0,1,2,3,4,8,9,13,102,103,150,1000,...]
: 我现在的想法就是先去匹配[],把[]全提出来后再按','去split,
: 然后再分别处理[]里面的内容,这样太复杂了,有什么简单办法么?
[1,2],3 and 1,2,3?
【在 x*z 的大作中提到】
: 应该很简单,自己也能想出解决办法,但是肯定不是最优的,想找个
: 最优解。问题就是展开如下的range,变成一个sequence。
: [0-3,4,8-9],13,[102-103,150],1000,...
: -》
: [0,1,2,3,4,8,9,13,102,103,150,1000,...]
: 我现在的想法就是先去匹配[],把[]全提出来后再按','去split,
: 然后再分别处理[]里面的内容,这样太复杂了,有什么简单办法么?
X*r
42 楼
It is very easy if we just ignore '[]'s:
import re
re.sub('(\d+)-(\d+)', lambda m: ','.join(map(str, range(int(m.group(1)), int
(m.group(2))+1))), '[0-3,4,8-9],13,[102-103,150],1000', 0).replace('[', '').
replace(']', '')
【在 M*P 的大作中提到】
: there is no difference in the example,just remove [] and split by , and
: match -
import re
re.sub('(\d+)-(\d+)', lambda m: ','.join(map(str, range(int(m.group(1)), int
(m.group(2))+1))), '[0-3,4,8-9],13,[102-103,150],1000', 0).replace('[', '').
replace(']', '')
【在 M*P 的大作中提到】
: there is no difference in the example,just remove [] and split by , and
: match -
j*k
48 楼
How to convert [1,2,3,4,5,6, 7,10, 15,17,19,21] to
'1-8, 10, 15-23-2'?
Thanks
'1-8, 10, 15-23-2'?
Thanks
p*o
49 楼
def parse( s ) :
result = ''
lst = [ eval(i) for i in s[1:-1].split(', ') ]
head, p0 = lst[0], lst[1]
diff0 = p0 - head
flag = True
num_consecutives = 2
for p in lst[2:] :
if not flag :
flag = True
diff0 = p - p0
p0 = p
continue
diff = p - p0
if flag and diff0 <> diff :
if 2 == num_consecutives :
ss = str(head)
head = p0
diff0 = p - p0
else:
ss = str(head) + '-' + str(p0)
if 1 <> diff0 :
ss += '-' + str(diff0)
head = p
flag = False
num_consecutives = 2
result += ss + ', '
else:
num_consecutives += 1
p0 = p
#end_for
if 2 == num_consecutives :
ss = str(head)
else:
ss = str(head) + '-' + str(p0)
if 1 <> diff0 :
ss += '-' + str(diff0)
result += ss
return result
if __name__ == '__main__' :
ss = ['[1, 2, 3, 4, 5, 6, 7, 10, 15, 17, 19, 21]',\
'[1, 3, 4, 5, 6, 7, 10, 15, 17, 19, 21, 24]',\
'[1, 3, 5, 6, 7, 10, 12, 15, 17, 19, 21, 24, 27, 30]' ]
for s in ss :
print( s )
print( parse( s ) )
[1, 2, 3, 4, 5, 6, 7, 10, 15, 17, 19, 21]
1-7, 10, 15-21-2
[1, 3, 4, 5, 6, 7, 10, 15, 17, 19, 21, 24]
1, 3-7, 10, 15-21-2, 24
[1, 3, 5, 6, 7, 10, 12, 15, 17, 19, 21, 24, 27, 30]
1-5-2, 6, 7, 10, 12, 15-21-2, 24-30-3
【在 j*****k 的大作中提到】
: How to convert [1,2,3,4,5,6, 7,10, 15,17,19,21] to
: '1-8, 10, 15-23-2'?
: Thanks
w*i
50 楼
def parse(s):
d2 = [1, 1] + [s[i]*2-s[i-1]-s[i+1] for i in xrange(1, len(s)-1)] + [1,
1]
outstr = ''
for i in xrange(len(s)):
if d2[i+1] == 0: continue
if d2[i] != 0 and d2[i+2] != 0: outstr += ', %d' % s[i]
if d2[i] == 0:
outstr += ', %d-%d' % (s[start],s[i])
if s[i] - s[i-1] > 1: outstr += '-%d' % (s[i]-s[i-1])
d2[i+2] = 1
if d2[i+2] == 0: start = i
return outstr[2:]
d2 = [1, 1] + [s[i]*2-s[i-1]-s[i+1] for i in xrange(1, len(s)-1)] + [1,
1]
outstr = ''
for i in xrange(len(s)):
if d2[i+1] == 0: continue
if d2[i] != 0 and d2[i+2] != 0: outstr += ', %d' % s[i]
if d2[i] == 0:
outstr += ', %d-%d' % (s[start],s[i])
if s[i] - s[i-1] > 1: outstr += '-%d' % (s[i]-s[i-1])
d2[i+2] = 1
if d2[i+2] == 0: start = i
return outstr[2:]
w*i
51 楼
def parse(s):
d2 = [1, 1] + [s[i]*2-s[i-1]-s[i+1] for i in xrange(1, len(s)-1)] + [1,
1]
outstr = ''
for i in xrange(len(s)):
if d2[i+1] == 0: continue
if d2[i] != 0 and d2[i+2] != 0: outstr += ', %d' % s[i]
if d2[i] == 0:
outstr += ', %d-%d' % (s[start],s[i])
if s[i] - s[i-1] > 1: outstr += '-%d' % (s[i]-s[i-1])
d2[i+2] = 1
if d2[i+2] == 0: start = i
return outstr[2:]
d2 = [1, 1] + [s[i]*2-s[i-1]-s[i+1] for i in xrange(1, len(s)-1)] + [1,
1]
outstr = ''
for i in xrange(len(s)):
if d2[i+1] == 0: continue
if d2[i] != 0 and d2[i+2] != 0: outstr += ', %d' % s[i]
if d2[i] == 0:
outstr += ', %d-%d' % (s[start],s[i])
if s[i] - s[i-1] > 1: outstr += '-%d' % (s[i]-s[i-1])
d2[i+2] = 1
if d2[i+2] == 0: start = i
return outstr[2:]
w*i
52 楼
def parse(s):
d2 = [1, 1] + [s[i]*2-s[i-1]-s[i+1] for i in xrange(1, len(s)-1)] + [1,
1]
outstr = ''
for i in xrange(len(s)):
if d2[i+1] == 0: continue
if d2[i] != 0 and d2[i+2] != 0: outstr += ', %d' % s[i]
if d2[i] == 0:
outstr += ', %d-%d' % (s[start],s[i])
if s[i] - s[i-1] > 1: outstr += '-%d' % (s[i]-s[i-1])
d2[i+2] = 1
if d2[i+2] == 0: start = i
return outstr[2:]
d2 = [1, 1] + [s[i]*2-s[i-1]-s[i+1] for i in xrange(1, len(s)-1)] + [1,
1]
outstr = ''
for i in xrange(len(s)):
if d2[i+1] == 0: continue
if d2[i] != 0 and d2[i+2] != 0: outstr += ', %d' % s[i]
if d2[i] == 0:
outstr += ', %d-%d' % (s[start],s[i])
if s[i] - s[i-1] > 1: outstr += '-%d' % (s[i]-s[i-1])
d2[i+2] = 1
if d2[i+2] == 0: start = i
return outstr[2:]
j*k
53 楼
Both solutions are very good. In westxi's solution, it would be better if
change %d to %s, s[i] - s[i-1] > 1 to s[i] - s[i-1] != 1
Thanks, very much
change %d to %s, s[i] - s[i-1] > 1 to s[i] - s[i-1] != 1
Thanks, very much
j*k
54 楼
Pulo, if the array is [1, 3, 5, 6, 7, 10, 12, 15, 17, 19, 21, 24, 27, 30, 8,
10], your code will have a problem to output the last one
10], your code will have a problem to output the last one
j*k
55 楼
Here is another version:
def parse(m_Array):
m_Out = '%s'%m_Array[0]
m_Flag = 0
m_Array = m_Array + [1]
for i in range(1,len(m_Array)-1):
if (m_Array[i] - m_Array[i - 1]) == (m_Array[i + 1] - m_Array[i]):
m_Flag += 1
if m_Flag == 0:
m_Out += '%s'%m_Array[i]
else:
if m_Flag >= 1:
m_Out += ':%s'% m_Array[i]
m_Step = m_Array[i] - m_Array[i-1]
if m_Step <> 1:
m_Out += ':%s'%m_Step
if i<>len(m_Array)-2: m_Out += ', '
m_Flag = -1
elif m_Flag ==0:
m_Out += ", %s"% m_Array[i]
elif m_Flag == -1:
m_Out += "%s"% m_Array[i]
m_Flag = 0
return m_Out
def parse(m_Array):
m_Out = '%s'%m_Array[0]
m_Flag = 0
m_Array = m_Array + [1]
for i in range(1,len(m_Array)-1):
if (m_Array[i] - m_Array[i - 1]) == (m_Array[i + 1] - m_Array[i]):
m_Flag += 1
if m_Flag == 0:
m_Out += '%s'%m_Array[i]
else:
if m_Flag >= 1:
m_Out += ':%s'% m_Array[i]
m_Step = m_Array[i] - m_Array[i-1]
if m_Step <> 1:
m_Out += ':%s'%m_Step
if i<>len(m_Array)-2: m_Out += ', '
m_Flag = -1
elif m_Flag ==0:
m_Out += ", %s"% m_Array[i]
elif m_Flag == -1:
m_Out += "%s"% m_Array[i]
m_Flag = 0
return m_Out
p*o
56 楼
我假设输入的list是排过序的,而且没有重复元素
你可以先把list转成set再转回list,完成排重和排序
lst = [1, 3, 5, 6, 7, 10, 12, 15, 17, 19, 21, 24, 27, 30, 8, 10]
lst = list( set( lst ) )
输出
[1, 3, 5, 6, 7, 8, 10, 12, 15, 17, 19, 21, 24, 27, 30]
1-5-2, 6-8, 10, 12, 15-21-2, 24-30-3
8,
【在 j*****k 的大作中提到】
: Pulo, if the array is [1, 3, 5, 6, 7, 10, 12, 15, 17, 19, 21, 24, 27, 30, 8,
: 10], your code will have a problem to output the last one
你可以先把list转成set再转回list,完成排重和排序
lst = [1, 3, 5, 6, 7, 10, 12, 15, 17, 19, 21, 24, 27, 30, 8, 10]
lst = list( set( lst ) )
输出
[1, 3, 5, 6, 7, 8, 10, 12, 15, 17, 19, 21, 24, 27, 30]
1-5-2, 6-8, 10, 12, 15-21-2, 24-30-3
8,
【在 j*****k 的大作中提到】
: Pulo, if the array is [1, 3, 5, 6, 7, 10, 12, 15, 17, 19, 21, 24, 27, 30, 8,
: 10], your code will have a problem to output the last one
相关阅读
求四大refer求CPA review can be used on IPAD求帮忙看一下 PA 的 CPE requirement卖 Becker CPA review book and Flash card with Becker online account accessFinance/Accounting jobsJob opening referralaudit or tax有人做过AP吗?CPA 补学分提供四大refer (NYC审计)一个accountant senior的机会 (转载)If i share Becker review with another two people per say...H1 Job opportunity on Long Island NY会计专业毕业,求审计或会计工作.谢谢!想問問大家, 6年經驗+CPA LICENSE,$78000年薪合理嗎?Houston Becker CPA review course sharing莫名被开finanical相关工作推荐CA CPA license application, Live Scan, 急cpa申请执照