问题标题: 酷町堂:4863 完全立方数

0
0
已解决
高舒豪
高舒豪
中级光能
中级光能

4863   完全立方数

经验值:0 时间限制:1000毫秒

题目描述 Description

求1~m内的完全立方数。
完全立方数为:该数可以分解成一个数的立方形式,
比如8可以分解成2的立方,27可以分解成3的立方,则8和27都是完全立方数。

输入描述 Input Description

第一行,一个数n,表示接下来有n组测试数据
第2行–第n+1行,每行1个数,m,求1–m范围内的立方数有哪些

输出描述 Output Description

输出n组数据
每组数据2行,第一行为满足范围内的数,空格隔开
第二行为满足条件数的个数

样例输入 Sample Input

2 1 30

样例输出 Sample Output

1 1 1 8 27 3

数据范围及提示 Data Size & Hint

n<=100,m<=10000


long long lf(int x){
	
	return pow(x,3);
}
int main(){
	int n;
	int m;
	double x;
	int count=0;
	cin>>n;
	for(int i=1; i<=n; i++){
		cin>>m;
		for(int j=1; j<=m; j++){
			for(int k=1; k<=m; k++){
				if(lf(k)==j){
					cout<<j<<" ";
					count++;
				}
			}
		}
		cout<<endl;
		cout<<count;
		cout<<endl;
		count=0;
	}
	return 0;
}



枚举超时

豌豆射手发射微笑emoji - 豌豆射手发射表情包_斗图_emoji_植物大战僵尸_豌豆表情-发表情

高舒豪在2021-07-01 13:17:25追加了内容


1
已采纳
王文博
王文博
缔造者之神
缔造者之神

方法修改:

while(1)用这个作为死循环

i=1开始枚举

一直枚举到pow(i,3)>这个数的时候跳出死循环即可。

每有1个就全局变量cnt++,并且i++。

 

我要回答