1 条题解
-
0
题解
题目分析
这是一道算法题目,需要根据具体题目要求进行求解。
解题思路
1. 问题分析
- 仔细阅读题目描述,理解题目要求
- 分析输入输出格式和约束条件
- 确定需要使用的算法和数据结构
2. 算法选择
- 根据题目特点选择合适的算法
- 考虑时间复杂度和空间复杂度
- 确保算法能正确处理所有测试用例
3. 实现要点
- 注意边界条件的处理
- 优化输入输出以提高效率
- 确保代码的正确性和鲁棒性
4. 调试和优化
- 使用测试用例验证算法正确性
- 分析性能瓶颈并进行优化
- 确保代码能通过所有测试点
注意事项
- 仔细处理数据类型和精度问题
- 注意数组越界和空指针问题
- 确保算法的时间复杂度符合要求
#include<bits/stdc++.h> #define reg register #define Mod(x) (((x)+mod)%mod) #define IN freopen(".in.txt","r",stdin) #define OUT freopen(".out.txt","w",stdout) #define int long long using namespace std; const int N=2e6,mod=999911658; int prm[N+10],isp[N+10],tot,minp[N+10],maxp[N+10]; inline int read(){ int k=1,x=0;char ch=getchar(); while (ch<'0'||ch>'9') {if (ch=='-') k=-1; ch=getchar();} while (ch>='0'&&ch<='9') x=(x<<3)+(x<<1)+ch-48,ch=getchar(); return k*x; } inline int count(reg int x,reg int b){ if (x==1) return 1; for (reg int i=b-1;i;i--) if (x%i==0) return count(x/i,b)+1; } inline void work1(reg int b){ for (reg int i=b-1;i;i--) for (reg int j=b-1;j;j--) for (reg int k=b-1;k;k--) if (count(i*j*k,b)>4){ printf("3 %lld %lld %lld\n",i,j,k); return; } printf("-1\n"); return; } inline void work2(reg int b){ reg int x=floor(cbrt(b)),y=ceil(sqrt(b)),z=minp[x]*maxp[y]; printf("3 %lld %lld %lld\n",z,z,z); } signed main(){ isp[1]=1; for (reg int i=2;i<=N;i++){ if (!isp[i]) prm[++tot]=i; for (reg int j=1;j<=tot&&prm[j]*i<=N;j++){ isp[i*prm[j]]=1; if (i%prm[j]==0) break; } } for (reg int i=1;i<=N;i++) minp[i]=isp[i]?minp[i-1]:i; for (reg int i=N;i;i--) maxp[i]=isp[i]?maxp[i+1]:i; reg int _=read(); while (_--){ reg int b=read(); b<=150?work1(b):work2(b); } return 0; } //................................................................................................................. //................................................................................................................. //................................................................................................................. //.......RRRRRRRRRRRRRRRRRRRR...................PPPPPPPPPPPPPPPPPPPP............................................... //.......RRRRRRRRRRRRRRRRRRRRRR.................PPPPPPPPPPPPPPPPPPPPPP............................................. //.......RRRRRRRRRRRRRRRRRRRRRRR................PPPPPPPPPPPPPPPPPPPPPPPP........................................... //.......RRRR.................RRRRR.............PPPP...............PPPPP........................................... //.......RRRR.................RRRRR.............PPPP................PPPPP.......................................... //.......RRRR.................RRRRR.............PPPP................PPPPP.......................................... //.......RRRR...............RRRRR...............PPPP...............PPPPP........................................... //.......RRRR............RRRRRR.................PPPP.............PPPPPP............................................ //.......RRRR............RRRRRR.................PPPP............PPPPPP............................................. //.......RRRR........RRRRRR.....................PPPP........PPPPPP................................................. //.......RRRRRRRRRRRRRRRRRR.....................PPPPPPPPPPPPPPPPPP................................................. //.......RRRRRRRRRRRRRRRRRR.....................PPPPPPPPPPPPPPPP................................................... //.......RRRR..........RRRR.....................PPPPP.................................+++................+++....... //.......RRRR...........RRRR....................PPPPP.................................+++................+++....... //.......RRRR.............RRRR..................PPPPP.................................+++................+++....... //.......RRRR..............RRRR.................PPPPP...........................+++++++++++++++....+++++++++++++++. //.......RRRR...............RRRR................PPPPP...........................+++++++++++++++....+++++++++++++++. //.......RRRR................RRRR...............PPPPP.................................+++................+++....... //.......RRRR.................RRRR..............PPPPP.................................+++................+++....... //.......RRRR...................RRRR............PPPPP.................................+++................+++....... //................................................................................................................. //................................................................................................................. //................................................................................................................. //.................................................................................................................
- 1
信息
- ID
- 3782
- 时间
- 3000ms
- 内存
- 256MiB
- 难度
- 10
- 标签
- 递交数
- 1
- 已通过
- 1
- 上传者