您的位置:首页 > 其它

1000! 中有多少个2

2013-03-19 16:23 176 查看
BIgInteger 是一个非常有用的类,用C时很难统计,但是可以用Java中的正则表达式来做,没有用上什么算法,但是很简单

import java.math.BigInteger;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

//求 1000!中2的个数

public class Num {
public static void main(String[] args) {
BigInteger bi = BigInteger.ONE;
for (int i = 2; i <= 1000; i++)
bi = bi.multiply(new BigInteger(i + ""));
String s = bi.toString();
Pattern p = Pattern.compile("2");
Matcher matcher = p.matcher(s);
String ss = "";
long wordNum = 0;
while (matcher.find()) {
ss += " " + matcher.group();
wordNum++;
}
System.out.println(bi.toString());
System.out.println("***********************");
System.out.println(ss);
System.out.println("*********************\n" + wordNum);
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐