`
libudi
  • 浏览: 35085 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

今天面试的实操题

阅读更多

今天为朋友面试几个程序员,我出了道题,不难,但几个人都没完成,发出来大家看看。

 

题目:编程打开此文件,统计花括号中数字 9 出现的次数并打印出来
要求:不看任何帮助,不限语言,用记事本写,限时 20 分钟。
{
AB4HJYLFNPCRC4CK7N1LZ4ZLFLQI3KRF5K19R53AFFSAVA1X1Z
UHYV8X9IYKD1R5SU8YMAZ910HF62V5YKDWK5FJT8GFJGURKFV0
0CCCD23NWP0RM33FDCCGYIUJN4LLXY6LRK10T0OTV5YEQOEBTY
C74Y7JZ0RXFI8NE9LBD5TZDYAL6TLP6MMRC41G7RE6OH3VDW7T
LQIGY9WYTD0FI5ZP9FBGANONCQSQY3UJNU5VJZU5MNW2QHZ416
G1JKZQ8GAI6L518JO4AIBSPAFZLOTJFKCZL2XU6AJ5YBFFOPFA
T1UI5CRCNXH2SPB9FBCD28EH19RBV27SX91Z6902ANLC2J47B6
7RYNP0ZMWS8D9AWMSX3W8RR9IHPY1BW2QGWC825PAHU5CR754Z
9HFX3GA3UQPF25DV2HROSZ2LBVKCQHDX4MKQ60OD3JBM54PJPN
XPW13QTWLIO0XG8BL6QS5YOUF9QFLW3REQFLX34FG0JMIB6YCX
AWU1G63XR20GN6S50KVDMMPU6Y09MDOJ7INCTSTIHO8SUNN26Y
US7IA9R8H3DPC9NZ53OXJ5GNOC8AGDCWJ2EYORSD7L8J24PSK0
MPP9NVZRGLPRMQCG9TQ63VPK4UKX5JWBR35H9YZJ6IRM3VAOIR
SJTVMU1ZF7PZUTS06TV4PA8B06JX72CDM5H8V92NAAV2QS07KF
E9EMFPRDNKJCK4INVCJOC1OBZSP0ADIT3WJ4RQBYYPIUMD4U4A
YY4M327CJS02QNG6RF7WVDQBZEGDMWPUKYODZ8H2PZ9PB0DVW6
V1LW5JJCNAL5GC5NFJR6PFEWKOU44G01YFMK7OHIB54AGSKWTU
Q2G0IF56DJ6YEPPP25O6UA5UO76UXNED9S8JOYQCC1F5HTFWX8
9JAJH983FSKVSLL2DY6BO6RO2DY5KE63DI8O427DAKZIODYBX9
ZYTMYUNLODK2TTBYSLKUHS6PXJUZHRXLVTPES2ZIP813OA7TQQ
}

 

没有集成开发环境支持,几个人有些不知所措。

 

我自己试过,如果用脚本语言来写可能用不到 2 分钟,C/Pascal 略长但 20 分钟绝对足够了。

 

4
3
分享到:
评论
31 楼 feisuzhu 2016-02-23  
s = "19293949592323423429293492394923949239492399999293492999"  
print sum(1 for i in s if i == '9')


考自己的古,发现了6年前的评论……
还是有长进的啊233
30 楼 feisuzhu 2010-09-09  
s = "19293949592323423429293492394923949239492399999293492999"
print reduce(lambda x,y:x+1 if y == '9' else x, [0] + list(s))
29 楼 szcjlssx 2009-09-19  
var str="AB4HJYLFNPCRC4CK7N1LZ4ZLFLQI3KRF5K19R53AFFSAVA1X1ZUHYV"
	var re =/9/g;
	var counter=0;
	str.replace(re,function () {
		counter++;
	});
	alert(counter);
28 楼 szcjlssx 2009-09-19  
var str="AB4HJYLFNPCRC4CK7N1LZ4ZLFLQI3KRF5K19R53AFFSAVA1X1ZUHYV"
var re =/9/g;
var counter=0;
str.replace(re,function () {
	counter++;
});
alert(counter);

JavaScript中用正则表达式实现,貌似效率不高
27 楼 fireflyman 2009-09-19  
ruby -e "puts File.read('Txt').count '9'"
26 楼 RednaxelaFX 2009-09-19  
night_stalker 写道
iaimstar 写道
siemens800 写道
...

人才啊

注意这个是水果风格的 windowsXP 里运行的 gvim

还有会强制用户升级的谷歌拼音2.0
25 楼 night_stalker 2009-09-19  
iaimstar 写道
siemens800 写道
...

人才啊

注意这个是水果风格的 windowsXP 里运行的 gvim
24 楼 mineral 2009-09-19  
我来个linux shell版本的,啥语言都不需要.
grep '9' data.txt|wc -l
23 楼 lggege 2009-09-18  
import java.util.*;
import java.io.*;
import java.lang.*;

public class Data
{
	public static void main(String[] args) throws Exception {
		int count = 0;

		File file = new File("data.txt");
		FileInputStream fis = new FileInputStream(file);
		InputStreamReader isr = new InputStreamReader(fis);
		BufferedReader br = new BufferedReader(isr);
		boolean hasContent = true;
		while(hasContent) {
			String line = br.readLine();			
			if (line != null && !"".equals(line.trim()))
			{
				hasContent = true;
			} else {
				hasContent = false;
			}

			if (hasContent)
			{	
				for (int i = 0; i < line.length(); i ++)
				{
					String bit = line.substring(i, i + 1);
					if ("9".equals(bit))
					{
						count ++;
					}
				}
				// char bits = line.getChars();
				// for (char bit : bits)
				// {
				//	if (bit == '9')
				//	{
				//		count ++;
				//	}
				//}
			}
		}

		System.out.println(count);
	}
}
22 楼 lggege 2009-09-18  
好了。 java版本的写出来了, 一共14分钟。

期间忘了一个方法: String.getChars(),耗了很多时间,只好改成 String.subString()。

确实有难度,写到一半才想起来,还要写import。
21 楼 libudi 2009-09-18  
RednaxelaFX 写道
说来老大的Lysee也有好一段时间没更新了呢,对吧?还是说我给漏掉了……

不好意思,有几个月了,不过人没懒,正勤快着呢 ,近期要做一次大的升级,删除了用户自定义类和接口,优化了 in 和 variant generator,删简了部分 API,接口文件也要跟着做些调整,不过快完成了,下周应该可以放出来。
20 楼 iaimstar 2009-09-18  
siemens800 写道
再试下

人才啊
19 楼 RednaxelaFX 2009-09-18  
说来老大的Lysee也有好一段时间没更新了呢,对吧?还是说我给漏掉了……
18 楼 libudi 2009-09-18  
siemens800 写道
:%s/9/&/gn
这个算不算

活学活用当然可以,本来就没有限制,vi,sed,wc,什么都行,关键是能想到,刚才我脑子跟过电一样又闪了几个可以拿到结果的方式,慢慢收拢一下看看。
17 楼 libudi 2009-09-18  
evilgod 写道
有意义吗?
傻逼


这道题确实太简单了,高手有权不屑于回复(国际惯例就是这样),实在看不下去调侃两句就算了,不必太激动

要是在 JavaEye 招人还出这种题,那肯定是找骂挨砖头,但高手毕竟是少数,可遇不可求,类似这样简单的题(或再难一点)可以挡住90%以上的应聘者,余下的才可能有共同语言,共同发展,双方都可以借此机会冷静的观察自己,了解对方,对题只当礼轻情谊重就罢了。
16 楼 siemens800 2009-09-18  
再试下
15 楼 siemens800 2009-09-18  
 评论版 发个东西怎么回事?
14 楼 siemens800 2009-09-18  
:%s/9/&/gn
这个算不算
13 楼 siemens800 2009-09-18  
:%s/9/&/gn
这个算不算:evil:
12 楼 wh8766 2009-09-18  
平时都太过依赖IDE了
习惯了代码提示后 慢慢淡忘了各种名字

相关推荐

Global site tag (gtag.js) - Google Analytics