1 条题解

  • 0
    @ 2025-10-22 18:10:14

    题解

    题目分析

    这是一道算法题目,需要根据具体题目要求进行求解。

    解题思路

    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
    上传者