用了__int128,本地正常,却报错,求调!
查看原帖
用了__int128,本地正常,却报错,求调!
1362631
fzc888888882023楼主2024/7/30 18:02
#include <iostream>
#define un128 unsigned __int128
#define ll long long
using namespace std;
un128 read()
{
	char arr[30];
	unsigned __int128 res = 0;
	scanf("%s", arr);
	for (int i = 1; i <= strlen(arr); i++)
	{
		res *= 10;
		res += arr[i] - '0';
	}
	return res;
}

un128 fac(ll n)
{
	un128 sum = 1;
	for (ll i = 1; i <= n; i++)
	{
		sum *= i;
	}
	return sum;
}

void print(un128 num)
{
	if (num > 9)
	{
		print(num / 10);
	}
	putchar(num % 10 + '0');
}

int main()
{
	int n;
	cin >> n;
	un128 ans = 0;
	for (int i = 1; i <= n; i++)
	{
		ans += fac(i);
	}
	print(ans);
	return 0;
}
2024/7/30 18:02
加载中...