1 条题解

  • 0
    @ 2025-10-10 20:11:59

    C++ :

    #include<bits/stdc++.h>
    using namespace std;
    int q[10001],c;
    int main()
    {
    	int n;
    	cin>>n; 
    	q[1] = 1;
    	c = 1;
    	int i = 1,j = 1,k = 1,t;
    	while(--n)
    	{
    		//选取 i、j、k、l位置的最小数填入到数组最后面 
    		t = min(q[i] * 2,min(q[j] * 3,q[k] * 5));
    		//加入数组中 
    		q[++c] = t;
    		//如果*2 、3、5 等于现在的最小数,那么后移 
    		if(q[i] * 2 == t ) i ++;
    		if(q[j] * 3 == t ) j ++;
    		if(q[k] * 5 == t ) k ++;
    	}
    	cout<<q[c];
        return 0;
    }
    
    
    
    • 1

    信息

    ID
    1079
    时间
    1000ms
    内存
    512MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者