• 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;
    }
    

     

  • 相关阅读:
    python中重要的模块--asyncio
    Mysql连接报错:1130-host ... is not allowed to connect to this MySql server如何处理
    驱动精灵扩展版(集成万能网卡驱动)无法自动识别网卡的解决方案
    ROS HTB限速失败原因分析和需注意事项
    按键精灵saystring无法使用的几种解决方案
    ESXI5-WIN2008R2安装域控以及额外域笔记
    centos如何使用utc时间
    NFS的安装以及windows/linux挂载linux网络文件系统NFS
    用命令行方式关闭CentOS防火墙
    CentOS6.4 上搭建NIS网络信息服务器
  • 原文地址:https://www.cnblogs.com/yspworld/p/4049947.html
Copyright © 2020-2023  润新知