新手求教,这样的题怎么做
已知数列1,3,3,3,5,5,5,5,5,7,7,7,7,7,7,7……。求:数列第40项的值;值为17的第一个数列是数列的第几项C++
#include <iostream> #include <cmath> using namespace std; unsigned f( unsigned i ) // 返回下标为i的项的值 { return unsigned(2 * ceil( sqrt(i+0.0) ) - 1); } unsigned g( unsigned i ) // 返回值为i的项的下标 { return (i-1)*(i-1)/4 + 1; } int main( void ) { cout << f(40) << '\n' << g(17) << endl; }