51nod1059 大数阶乘升级版

51nod1059:超大数阶乘

  • 每1000位换行,可以在for循环的打印中使用小技巧判断(i + 1) % 1000 == 0,成立则输出一次换行。
  • 存储用大数,输出用字符。
import java.util.Scanner;
import java.math.BigInteger;

public class Main {
	public static void main(String[] args) {
		Scanner in = new Scanner(System.in);
		BigInteger n = in.nextBigInteger();
		BigInteger a = BigInteger.ONE, ans = a;
		while (a.compareTo(n) <= 0) {//ans存储n!
			ans = ans.multiply(a);
			a = a.add(BigInteger.ONE);
		}
		String s = ans.toString();//转化为字符后打印
		for (int i = 0; i < s.length(); i++) {
			System.out.print(s.charAt(i));
			if ((i + 1) % 1000 == 0)
				System.out.println("");
		}
	}
}
全部评论

相关推荐

2025-11-22 16:20
已编辑
用友_Java开发实习生(实习员工)
等闲_:感觉有好多地方会被问穿,mysql存储向量这个方案问题应该很大的,如果深问的的话,为什么不用es,不用pg,不用mivus,分块策略是怎么做的,向量化是怎么向量化的,稠密向量还是稀疏向量,再深问余弦相似度,HSWM算法,Bm25算法,为什么不用混合检索或者Rank重排序优化?其他的项目不停机分库分表咋实现的,切库过程中数据有diff的话有没有补偿策略?既然有了分库分表了有没有碰到业务上不好优化的慢sql,让这个sql读从库?而且点评的话,最好自己压测过,要不这个数据也不好解释。现在就27的情况来看,很多同学已经有了中大厂实习,这个节点也会偏向这些有大厂实习的92同学,而且hc也不多,所以坚持海投吧
听劝,我这个简历该怎么改...
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务