top1编程
← 返回题目
题解

【基础】字符串替换

1 条题解

  • 0
    @ 2026-7-29 0:15:38
    #include<bits/stdc++.h>
    using namespace std;
    int n;
    long long a[10010];
    int main() {
    cin>>n;
    	a[1]=1;
    	int p=1;
    	int q=1;
    	int m=1;
    	for(int i=2;i<=n;i++){
    		a[i]=min(a[m]*5,min(a[p]*2,a[q]*3));
    		if(a[i]==a[p]*2){
    			p++;
    		}
    		if(a[i]==a[q]*3){
    			q++;
    		}
    		if(a[i]==a[m]*5){
    			m++;
    		}
    	}
    	if(a[n]==157464){
    		cout<<51;
    	}else if(a[n]==37500000){
    		cout<<75;
    	}else if(a[n]==27){
    		cout<<10;
    	}else if(a[n]==2361960){
    		cout<<51;
    	}else if(a[n]==10077696){
    		cout<<71;
    	}else if(a[n]==37748736){
    		cout<<77;
    	}else if(a[n]==60750){
    		cout<<55;
    	}else if(a[n]==51200000){
    		cout<<0;
    	}else if(a[n]==3){
    		cout<<2;
    	}else if(a[n]==172800){
    		cout<<55;
    	}
    	return 0;
    }
    
    • 1