已知数列1,1,3,1,3,5,1,3,5,7,.....例如第5项的值是3,求第n 项的值.
#include<iostream>
using namespace std;
int n;
int f(int k,int x,int y,int z){//k表示当前来到数列第k项,x表示当前项处于第x周期,y是当前项处于当前周期中的第y项,z表示当前项的值
// cout<<z<<" ";
if(k==n)return z;
if(x==y)f(k+1,x+1,1,1);//如果当前周期内项数已填满,则要到下一周期的第一项
else
f(k+1,x,y+1,z+2);//如果当前周期未满,则来到当前周期中的下一项
}
int main(){
cin>>n;
cout<<f(1,1,1,1);
return 0;
}