SRM310 div1 easy

1 4 9 16 25
で正方形が増えていくけど、K=15とか14では一段目さえもまともに組み立てられない。
とりあえず、それに注意する。後は裏面の面積もたすこととか。こんがらなければ簡単に解ける問題。
じぶんはこんがらがってたww
class PyramidOfCubes {
	public:
	double surface(int K) {
		LL tmp = 0;
		int i;
		for(i = 1; ; i++) {
			tmp += i*i;
			if(tmp >= K) break;
		}
		double ans = 0; ans += i*i*1.0*2;
		if(i*i > K) ans -= (i*i - K)*2; //K=15とか、K=14とかに対処。
		for(int j = i; j >= 1; j--) {
			if(K - j*j >= 0) {
				K -= j*j;
				ans += j*4*1.0;
			} else {
				int row = (K-1)/j + 1;
				int col = (K < j) ? K%j : j;
				ans += (row+col)*2.0; break;
			}
		}
		return ans;
	}