本题只需用一个数组来存储 Fibonacci sequence
然后用所给的1——n来进行一一对比即可
#include<iostream>
using namespace std;
int main()
{
int n;
cin>>n;
long long array[10000];
array[0]=1;
array[1]=1;
int q=0;
for(int i=2;i<10000;++i){
array[i]=array[i-1]+array[i-2];
if(array[i]>n){
q=i;
break;
}
}
if(n<=1000&&n>=1){
char a[1001];
for(int i=1;i<=n;++i){
int aa=0;
for(int j=0;j<=q;++j){
if(i==array[j]){
a[i]='O';
aa=1;
break;
}
}
if(aa==0){
a[i]='o';
}
}
for(int i=1;i<=n;++i){
cout<<a[i];
}
}
return 0;
}