求条,用递归写了个90pts,最后几个点tle
  • 板块P11397 界分数
  • 楼主Ryoo
  • 当前回复2
  • 已保存回复2
  • 发布时间2024/12/14 20:05
  • 上次更新2024/12/14 22:03:27
查看原帖
求条,用递归写了个90pts,最后几个点tle
1100140
Ryoo楼主2024/12/14 20:05
#include <bits/stdc++.h>
using namespace std;
int n;
unsigned long long ans;
unsigned long long dp(unsigned long long x) {
	if(x == 2) return 1;
	if(x % 2 == 0) {
		return dp(x/2)+1;
	}
	else return dp((x+1)/2)+1;
}
int main() {
	scanf("%d", &n);
	for(unsigned long long i = 1; i <= n; i++) {
		if(i == 1) {ans++;continue;}
		ans = (ans+(i%2==0?dp(i)+1:dp(i+1)+1))%998244353;
	}
	printf("%lld", ans);
	return 0;
}
2024/12/14 20:05
加载中...