打表找规律
在n%3==0时 分三份
在n%4==0时分成n/2 n/4 n/4
#include<bits/stdc++.h>
using namespace std;
int T;
long long n;
int main(){
scanf("%d",&T);
while (T--){
scanf("%lld",&n);
if (!(n%3)){
long long tmp=n/3;
printf("%lld\n",tmp*tmp*tmp);
}else if (!(n%4)){
long long tmp=n/4;
printf("%lld\n",tmp*tmp*2*tmp);
}else printf("-1\n");
}
return 0;
}
本文介绍了一种通过打表寻找规律的算法实现方法,当输入数值n满足特定条件时(如n能被3整除或n能被4整除),算法会将n拆分为若干部分并计算这些部分的乘积。此算法适用于竞赛编程中快速解决问题。
1万+

被折叠的 条评论
为什么被折叠?



