100分unac求调
查看原帖
100分unac求调
1245629
woscxk楼主2024/4/22 14:29
#include<bits/stdc++.h>
using namespace std;
long long a[10001];//表
int main(){
	for(int i=0;i<10001;i++){//打表程序
		a[i]=pow(i+1,3)-pow(i,3);
	}
	int t;
	cin>>t;//q
	long long output[t]={};//集体输出数组
	for(int i=0;i<t;i++){
		long long x,sum=0;
		scanf("%lld",&x);
		for(int j=1;x>0;j++){
			if(x>=a[j]){
				x-=a[j];
				sum+=a[j]*j;
			}else{//如果只占一部分,将x消耗完并令x=0
				sum+=x*j;
				x=0;
			}
		}
		output[i]=sum;
	}
	for(int i=0;i<t;i++){
		printf("%lld\n",output[i]);
	}
}

tj被hack以后死活想不到O(tlogn)/O(t)O(tlogn)/O(t)方法,求调玄关!

2024/4/22 14:29
加载中...