2201.cpp

来自「这是哈尔滨工业大学acmOJ的源代码」· C++ 代码 · 共 27 行

CPP
27
字号
/*  This Code is Submitted by wywcgs for Problem 2201 on 2006-04-10 at 21:36:12 */ 
#include <cstdio>
#include <algorithm>
using namespace std;

const int LB = -600;
const int UB = 600;
const int CM = UB-LB+1;

int main()
{
	int cube[CM], i, n, o;

	for(i = LB; i <= UB; i++) cube[i-LB] = i*i*i;
	while(scanf("%d", &n) != EOF && n != 0) {
		for(i = LB; i <= UB; i++) {
			int r = n-cube[i-LB];
			o = lower_bound(cube, cube+CM, r) - cube;
			if(cube[o] == r) break;
		}
		if(i > UB) printf("impossible\n");
		else printf("%d %d\n", i, o+LB);
	}
	
	return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?