zoukankan      html  css  js  c++  java
  • Beer Refrigerator

    http://202.117.21.117/xjoj/problem_html/102.html

    c++:

     1 #include <stdio.h>
     2 #include <math.h>
     3 #include <limits.h>
     4 
     5 int main()
     6 {
     7    int n;
     8    int i,j,k;
     9    int ans[3];
    10    int min;
    11    while(scanf("%d",&n)!=EOF)
    12    {
    13        min=INT_MAX;
    14        for(i=1;i<=sqrt((double)n)+1;i++)
    15        {
    16            if(n%i==0)
    17            {
    18                for(j=1;j<=n/i;j++)
    19                {
    20                    if(n%(i*j)==0)
    21                    {
    22                        k=n/(i*j);
    23                        if(i*j+i*k+j*k<min)
    24                        {
    25                             min=i*j+i*k+j*k;
    26                             ans[0]=i;
    27                             ans[1]=j;
    28                             ans[2]=k;
    29                        }
    30                    }
    31                }
    32            }
    33        }
    34        printf("%d %d %d\n",ans[0],ans[1],ans[2]);
    35    }
    36    return 0;
    37 }

     java:

     1 //author:pz
     2 
     3 import java.awt.*;
     4 import java.io.*;
     5 import java.util.*;
     6 import java.lang.*;
     7 
     8 public class Main {
     9     public static void main(String[] args) {
    10         Scanner in = new Scanner(new BufferedInputStream(System.in));       
    11         while(in.hasNextInt()){
    12             int i,j,k;
    13         int []ans = new int[3];
    14         int min;
    15             int n = in.nextInt();
    16             min=Integer.MAX_VALUE;
    17             for(i=1; i<=Math.sqrt((double)n)+1; i++)
    18             {
    19                 if(n%i==0)
    20                 {
    21                     for(j=1; j<=n/i; j++)
    22                     {
    23                         if(n%(i*j)==0)
    24                         {
    25                             k=n/(i*j);
    26                             if(i*j+i*k+j*k<min)
    27                             {
    28                                 min=i*j+i*k+j*k;
    29                                 ans[0]=i;
    30                                 ans[1]=j;
    31                                 ans[2]=k;
    32                             }
    33                         }
    34                     }
    35                 }
    36             }
    37             System.out.println(ans[0]+" "+ans[1]+" "+ans[2]);
    38         }
    39     }
    40 }
  • 相关阅读:
    codeforces-1139 (div2)
    codeforces-1140 (div2)
    codeforces-1141 (div3)
    第四届CCCC团体程序设计天梯赛 后记
    BZOJ 3674 可持久化并查集
    你能回答这些问题吗
    [JSOI2008]最大数
    关路灯
    愤怒的小鸟
    推销员
  • 原文地址:https://www.cnblogs.com/pengzheng/p/3065437.html
Copyright © 2011-2022 走看看