社区讨论

爆"int",求助;

P1009[NOIP 1998 普及组] 阶乘之和参与者 4已保存回复 4

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
4 条
当前快照
1 份
快照标识符
@mhjlicx8
此快照首次捕获于
2025/11/04 04:31
4 个月前
此快照最后确认于
2025/11/04 04:31
4 个月前
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;
__int128 read() {
__int128 x = 0, f = 1;
char ch = getchar();
while (ch < '0' || ch > '9') {
if (ch == '-') f = -1;
ch = getchar();
}
while (ch >= '0' && ch <= '9') {
x = x * 10 + ch - '0';
ch = getchar();
}
return x * f;
}
void write(__int128 x) {
if (x < 0) putchar('-'), x = -x;
if (x > 9) write(x / 10);
putchar(x % 10 + '0');
}
int main(){
	__int128 n,sum=0,fac=1;
	n=read();
	for(int i=1;i<=n;i++){
		fac*=i;
		sum+=fac; 
	}
	write(sum);
	return 0;
}

(int128读写函数没问题)

回复

4 条回复,欢迎继续交流。

正在加载回复...