NYOJ--452题ShippingCubes

来源:互联网 发布:淘宝大虫网游店 编辑:程序博客网 时间:2024/06/06 10:48

这个题是月赛的题目,但是当时没有理解好题目,思路错了,很没悬念的悲剧了。

后来想明白了,题目中要求是把一个拆解成3个数相乘的情况,然后把三个数进行求和,最后输出最小的和。

。既然思路清晰了,下面就是最简单的写代码了。

原题地址:点击打开链接。

代码如下:

#include<stdio.h>int main(){int i,j,k,l,n,m;while(scanf("%d",&n)!=EOF){      int sum=0,min=205;  for(i=1;i<=n;i++)   for(j=1;j<=n;j++)    if(n%(j*i)==0)//此处需要仔细想想why。{      k=n/(j*i);      sum=k+i+j;      if(sum<min)      min=sum;}   printf("%d\n",min);}return 0;}                


原创粉丝点击