为什么只有20分
查看原帖
为什么只有20分
363069
Keep_RAD楼主2020/11/14 21:31
#include<bits/stdc++.h>
using namespace std;
int ss(int n)
{
    for(int i=2;i*i<=n;i++)
        if(n%i==0) return 0;
    return 1;
}
int search(int n)
{
    if(n==0) return 0;
    else
        for(int i=2;i<=n/2;i++)
            if(n%i==0 && ss[i])
            {search(n/i);cout<<"*"<<i;}
}
unsigned long long a[50]={1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368,75025,121393,196418,317811,514229,832040,1346269,2178309,3524578,5702887,9227465,14930352,24157817,39088169,63245986,102334155,165580141,267914296,433494437,701408733,1134903170,1836311903,2971215073,4807526976,7778742049};
int main()
{
	int n;
	cin>>n;
	cout<<a[n-1]<<"=";
	if(ss(a[n-1]))
	{cout<<a[n-1]; return 0;}
	if(!search(a[n-1]))
	return 0;
}

分解质因数竟然把8分解成了2 * 2 * 4

2020/11/14 21:31
加载中...