zoukankan      html  css  js  c++  java
  • 分苹果 网易2017测试工程师编程题

    题目:

    n只奶牛坐在一排,每个奶牛拥有ai只苹果,现在你要在它们之间转移苹果,使得最后所有奶牛拥有的苹果数相同,每一次你只能从一只奶牛身上拿走恰好两只苹果到另一只奶牛身上,问最少需要移动多少次可以评分拼过,如果方案不存在,输出-1。

    输入描述:

    每个输入包含一个测试用例,每个测试用例的第一行包含一个整数n(1<=n<=100),接下来的一行包括n个整数ai(1<=ai<=100)。

    输出描述:

    输出一行表示最少需要移动多少次可以平分苹果,如果方案不存在则输出-1。

    输出例子:

    4

    7 15 9 5

    输出例子:

    3

     1 #include <iostream>
     2 #include <vector>
     3 #include <algorithm>
     4 using namespace std;
     5 
     6 int sum(const vector<int> &v)
     7 {
     8     vector<int>::size_type n=v.size();
     9     int sum=0;
    10     for(int i=0;i<n;i++)
    11         sum+=v[i];
    12     return sum;
    13 }
    14 
    15 int count(const vector<int> &v, const int n)
    16 {
    17     if(sum(v)%n)
    18         return -1;
    19     else
    20     {
    21         int ave=sum(v)/n;
    22         int cnt=0;
    23         for(int i=0;i<n;i++)
    24         {
    25             if(abs(v[i]-ave)%2)
    26                 return -1;
    27             else
    28             {
    29                 cnt=cnt+abs(v[i]-ave)/2;
    30             }
    31         }
    32         return cnt/2;
    33     }
    34 }
    35 
    36 int main()
    37 {
    38     int n;//n为奶牛个数
    39     vector<int> v;
    40     cin>>n;
    41     for(int i=0;i<n;i++)
    42     {
    43         int temp;
    44         cin>>temp;
    45         v.push_back(temp);
    46     }
    47     cout<<count(v,n);
    48 }
  • 相关阅读:
    纯css制作带三角(兼容所有浏览器)
    xmapp 404设置
    css 选择器
    IE6/IE7/IE8下float:right的异常及其解决方法
    artdialog5 bug
    jQuery插件开发--(转)
    Global对象
    JS 关于(function( window, undefined ) {})(window)写法的理解
    wx-charts 微信小程序图表插件
    小程序二次贝塞尔曲线,购物车商品曲线飞入效果
  • 原文地址:https://www.cnblogs.com/hslzju/p/5742777.html
Copyright © 2011-2022 走看看