Wiki_ki

导航

POJ 1477 Box of Bricks,题目什么的是水题,第一个Java程序,纪念一下^-^

  题目的意思就是现在有N堆砖头,每堆砖头的数量不一样多,现在问你要移动多少次砖头(一次限一个)使得每堆砖头数相同。

  做法就是算出平均数,然后直接算出超平均数的差值和即可。

  代码如下:(第一次用java,写的不好,纪念一下)

import java.util.*;

public class averge {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner cin=new Scanner(System.in);
        int ave , i , n , ans , t = 1;
        int a[] = new int[50];
        while (true) {
            n = cin.nextInt();
            if (n == 0) break;
            ave = 0;
            for (i = 0;i < n;i++) {
                a[i] = cin.nextInt();
                ave += a[i];
            }
            ave /= n; ans = 0;
            for (i = 0;i < n;i++)
                if (a[i] > ave) ans += a[i] - ave;
            System.out.println("Set #"+t);
            System.out.println("The minimum number of moves is "+ans+".");
            System.out.println();
            t ++;
        }
    }
}

  测试结果如下:

  话说java真心很慢,如果是C/C++的话估计应该是0ms或者16ms的多

posted on 2012-08-16 13:35  Wiki_ki  阅读(212)  评论(0编辑  收藏  举报