QWQ怎么办 求调+玄关
查看原帖
QWQ怎么办 求调+玄关
1067991
LXY_elven楼主2024/7/5 17:02

才70分QWQ

#include<bits/stdc++.h>
using namespace std;
int sn[88888]; 
int shift(int a[],int b,int n){ 
	int max=0; 
	for(int i=0;i<n;i++){ 
		if(a[i]==b){ 
			max++; 
		} 
	} 
	return max;
} 
int main(){ 
	cin.tie(0); cout.tie(0); 
	ios::sync_with_stdio(false); 
	unsigned long long n,nn=0; 
	cin>>n; 
	for(int i=2;i<=n;i++){ 
		while(n%i==0){ 
			sn[nn]=i;
			 n/=i; 
			 nn++;
		}
	}
	for(int i=0;i<nn;i++){ 
		if(i==nn-1){ 
			if(shift(sn,sn[i],nn)==1){ 
				cout<<sn[i];
			}
			else{ 
				cout<<sn[i]<<"^"<<shift(sn,sn[i],nn); 
			} 
		}else{ 
			if(shift(sn,sn[i],nn)==1){ 
				cout<<sn[i]<<" * "; 
			}
			else{ 
				cout<<sn[i]<<"^"<<shift(sn,sn[i],nn)<<" * ";
			}
		}
		i+=shift(sn,sn[i],nn)-1;
	} 
	return 0; 
}
2024/7/5 17:02
加载中...