[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[技术讨论] [题目]0-9各自出现的次数

0在这十句话中出现的次数是______。
1在这十句话中出现的次数是______。
2在这十句话中出现的次数是______。
3在这十句话中出现的次数是______。
4在这十句话中出现的次数是______。
5在这十句话中出现的次数是______。
6在这十句话中出现的次数是______。
7在这十句话中出现的次数是______。
8在这十句话中出现的次数是______。
9在这十句话中出现的次数是______。

解这道题,python perl batch 等,脚本语言不限。
(=_=脚本没写完,后来直在稿纸上一个个演算出来了。。。)

哪10句话?

TOP

回复 2# BAT-VBS


    就是原题中的十句话,
例如第一个你填1,那么包括第二句的1 就有2个1 了

TOP

本帖最后由 523066680 于 2015-6-5 20:41 编辑

假定所有的次数都小于等于9。
晚上别关机,睡一觉应该能跑出结果来。。。。。。。
#a = 1732111210
  1. a = int(1E9)
  2. while a<int(1E10):
  3. a += 1
  4. s = str(a)
  5. for i in range(0,10):
  6. if int(s[i]) != s.count(str(i))+1:
  7. break
  8. else:
  9. print "done:"+s
  10. raw_input('pause')
复制代码

TOP

本帖最后由 523066680 于 2015-6-5 20:41 编辑

回复 4# QIAOXINGXING


    没去等运行结果,
你的答案是#a = 1732111210 否?
最后一位不是0

还有一种答案,群里讨论的时候有个秒算的,得到另一个答案也符合。并且可能有N多种解

TOP

本帖最后由 523066680 于 2015-6-5 20:42 编辑
回复  QIAOXINGXING


    没去等运行结果,
你的答案是#a = 1732111210 否?
最后一位不是0

还有 ...
523066680 发表于 2013-1-7 22:09


呵呵,其实是开个玩笑,我也没等结果。网上搜了个答案, 1732111211,程序验证是对的。

TOP

回复 6# QIAOXINGXING


    碉堡了 (刚刚不小心编辑到了 已经撤销)

TOP

本帖最后由 523066680 于 2015-6-5 20:40 编辑

沉了?题目太简单吗?
在某个群里得到两个不同结果的算法,都是秒算的
一个js一个python 现在不发上来。

另一种结果:
0 : 1
1 : 11
2 : 2
3 : 1
4 : 1
5 : 1
6 : 1
7 : 1
8 : 1
9 : 1

TOP

本帖最后由 523066680 于 2015-6-5 20:41 编辑

content是一个文本文件的全名,其中的内容为
0在这十句话中出现的次数是______。
1在这十句话中出现的次数是______。
2在这十句话中出现的次数是______。
3在这十句话中出现的次数是______。
4在这十句话中出现的次数是______。
5在这十句话中出现的次数是______。
6在这十句话中出现的次数是______。
7在这十句话中出现的次数是______。
8在这十句话中出现的次数是______。
9在这十句话中出现的次数是______。
  1. '''
  2. Created on 2013-1-8
  3. @author: fengjiax
  4. '''
  5. import re
  6. def main():
  7.     with open("content", "r") as fp:
  8.         content = fp.readlines()
  9.         
  10.     print vic(content)
  11.    
  12. def vic(content):
  13.     values = [0 for i in range(len(content))]
  14.     keywords = [i for i in range(10)]
  15.    
  16.     while True:
  17.         update_count = 0
  18.         for keyword in keywords:
  19.             value = 0
  20.             last_value = values[keyword]
  21.             for line in content:
  22.                 value += len(re.findall(str(keyword), line))
  23.             for val in values:
  24.                 value += len(re.findall(str(keyword), str(val)))
  25.             values[keyword] = value
  26.             if last_value != value:
  27.                 update_count += 1
  28.         if not update_count:
  29.             new_content = list()
  30.             for key,val in enumerate(values):
  31.                 new_content.append(content[key].replace("______","__%s__" % val))
  32.             return "".join(new_content)
  33. if __name__ == "__main__":
  34.     import time
  35.     s = time.time()
  36.     main()
  37.     print time.time() - s
  38.     raw_input("pause")
复制代码
秒算…… 作者 fengjiax
0在这十句话中出现的次数是__1__。
1在这十句话中出现的次数是__7__。
2在这十句话中出现的次数是__3__。
3在这十句话中出现的次数是__2__。
4在这十句话中出现的次数是__1__。
5在这十句话中出现的次数是__1__。
6在这十句话中出现的次数是__1__。
7在这十句话中出现的次数是__2__。
8在这十句话中出现的次数是__1__。
9在这十句话中出现的次数是__1__。

pause

TOP

返回列表