blocks 1012.cpp

来自「哈尔滨工程大学的oj上的ac源码」· C++ 代码 · 共 36 行

CPP
36
字号
#include <stdio.h>
 #include <math.h>
 #include<stdlib.h>
 int main()
 {
 	int T;
 	scanf("%d",&T);
 	for(;T>0;T--)
 	{
 		int N;
 		scanf("%d",&N);
 		int tmp=N;
		if(N==0)
 		{
 			printf("0\n");
 			continue;
 		}
 		int a=ceil(pow(N,1.0/3)),b,c,min=10000;//printf("%d\n",a);
 		for(;a>0;a--)
 			if(N%a==0)
 			{
 				int tmp=N;
 				tmp/=a;
 				for(b=sqrt(tmp);b>0;b--)
 					if(tmp%b==0)
 					{   //printf("%d %d %d\n",a,b,c);
 						c=tmp/b;
 						if(min>((a*b+b*c+c*a)<<1)) min=(a*b+b*c+c*a)<<1;
 					}
 			}
 		printf("%d\n",min);
 	}
 	//system("pause");
 	return 0;
 }

⌨️ 快捷键说明

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