40pts求调
  • 板块灌水区
  • 楼主a_little_carrot
  • 当前回复2
  • 已保存回复2
  • 发布时间2024/4/29 21:57
  • 上次更新2024/4/30 13:20:23
查看原帖
40pts求调
1042960
a_little_carrot楼主2024/4/29 21:57

Answer.

Code

#include<bits/stdc++.h>
#include<vector>
using namespace std ;
typedef unsigned long long ull ;
vector<ull> v ;
void a() {
	for (int i=1;i<=1e4+5;++i) {
		v.emplace_back(i*i*i) ;
	}
    v.emplace_back() ;
}
inline ull read() {
	ull x=0,f=1 ;
	char c=getchar() ;
	while(c<'0'||c>'9')if(c=='-')f=-1,c=getchar() ;
	while(c>='0'&&c<='9')x=x*10+c-'0',c=getchar() ;
	return x*f ;
}
inline void write(ull x) {
	if(x>9)write(x/10) ;
	putchar(x%10+'0') ;
}
ull q,x[200005],p=1,ans,i ;
int main() {
	ios::sync_with_stdio(false);cin.tie(0);cout.tie(0) ;
	a() ;
	q=read() ;
	for(ull j=1;j<=q;++j) {
		/*if(j!=1)*/getchar() ;
		x[j]=read() ;
		while(v[i]<=x[j]) {
			ans+=(i+1)*(min(x[j],v[i+1]-1)-max(x[j-1],v[i]-1)) ;
			i++ ;
		}
		i-- ;
		write(ans) ;
		putchar('\n') ;
	}
	return 0 ;
}

求助 QAQ

2024/4/29 21:57
加载中...