zoukankan      html  css  js  c++  java
  • codeforces 的 Codeforces Round #273 (Div. 2) --C Table Decorations

    C. Table Decorations
    time limit per test
    1 second
    memory limit per test
    256 megabytes
    input
    standard input
    output
    standard output

    You have r red, g green and b blue balloons. To decorate a single table for the banquet you need exactly three balloons. Three balloons attached to some table shouldn't have the same color. What maximum number t of tables can be decorated if we know number of balloons of each color?

    Your task is to write a program that for given values rg and b will find the maximum number t of tables, that can be decorated in the required manner.

    Input

    The single line contains three integers rg and b (0 ≤ r, g, b ≤ 2·109) — the number of red, green and blue baloons respectively. The numbers are separated by exactly one space.

    Output

    Print a single integer t — the maximum number of tables that can be decorated in the required manner.

    Sample test(s)
    input
    output
    input
    output
    input
    output
    Note

    In the first sample you can decorate the tables with the following balloon sets: "rgg", "gbb", "brr", "rrg", where "r", "g" and "b" represent the red, green and blue balls, respectively.

     

      从网上找到两种代码,算法的核心思路是一样的。有待仔细研究一下,我想过要用该路的问题,但好像又行不通。

      最后演变成了规律性的解。

     

    #include <stdio.h>
        #include <iostream>
        #include <cstring>
        #include <algorithm>
        #include <cmath>
        using namespace std;
        long long r;
        long long g,b,ans;
        int main()
        {
             scanf("%I64d%I64d%I64d",&r,&g,&b);
             
             ans=min(min(min((r+g+b)/3,r+g),r+b),b+g);
             
             printf("%I64d
    ",ans);
             
             return 0;
        }
    

     

    #include <stdio.h>
    #include <string.h>
    #include <iostream>
    #include <algorithm>
    #include <vector>
    #include <queue>
    #include <set>
    #include <map>
    #include <string>
    #include <math.h>
    #include <stdlib.h>
    #include <time.h>
    using namespace std;
    #define INF 0x7fffffff
    
    long long a[4], t;
    
    int main()
    {
      #ifdef sxk
        freopen("in.txt","r",stdin);
      #endif
      int n;
      while(scanf("%lld%lld%lld",&a[0], &a[1], &a[2])!=EOF)
      {
        sort(a, a+3);
        if(a[2] > 2*(a[0]+a[1])) t = a[0] + a[1];
        else
        t = (a[0]+a[1]+a[2])/3;
        printf("%lld
    ", t);
      }
      return 0;
    }
    

     

  • 相关阅读:
    linux centos7 如何安装mysql
    Json转换 在java中的应用
    最最简单的spring mvc + Maven项目
    windows下 申请免费ssl证书的方法 (letsencrypt)
    PowerDesigner中Table视图同时显示Code和Name
    在linux中 部署 mongo 数据库服务端
    Java保存图片到数据库Blob格式
    MyBatis mapper记录
    vue防止多次点击,重复请求
    金额的单位转换,元转分
  • 原文地址:https://www.cnblogs.com/yspworld/p/4049947.html
Copyright © 2011-2022 走看看