题意:计算从1开始到第n个非完全平方数的开方和
分析:设第n个非完全平方数的值为a,x * x < a < (x+1) * (x+1),而且易得(tmp = sqrt (a) ) == x,a之前的非完全平方数的个数为a - tmp,所以可以二分查找a - tmp == n的a,然后模拟一下能计算出前a个数的开方和
收获:二分查找是个好方法
代码:
/************************************************* Author :Running_Time* Created Time :2015-8-27 16:14:57* File Name :C.cpp ************************************************/#include #include #include #include #include #include #include #include #include #include #include #include #include