列表

详情


NC216205. DrinkingTimeII

描述

 来到了鸽子转转转酒吧,向酒保  点了亿杯红酒、 杯红茶、 杯耗子尾汁。 作为一名正常的上班族酒保,当然拒绝了  的不合理要求,并且给了  一道题让他自己玩去。
题目是这样的:给出三种饮料各自的数量,有三种鸡尾酒的调制规则:
  • (使用一杯饮料和一杯饮料可以调制出一杯鸡尾酒,下面两种规则以此类推)


现在, 要求出能调出的鸡尾酒的最大数量,但是  太菜了,于是便来向你寻求帮助,你能告诉她答案吗?

输入描述

输出只有三个整数,分别表示三种饮料的个数。

输出描述

输出一个整数,表示能调出的最多的鸡尾酒数。

示例1

输入:

1 2 3

输出:

2

说明:

Hile_{} 可以用这些饮料调制出\{1D,1F\}_{}\{1E,1F\}_{},都是两杯鸡尾酒。

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

C(clang11) 解法, 执行用时: 1ms, 内存消耗: 376K, 提交时间: 2020-12-26 14:15:28

 #include<stdio.h>
 int main()
 {
 	long long a,b,c,d,e,f,s;
 	scanf("%lld %lld %lld",&a,&b,&c);
 	d=a>=b?b:a;a-=d;b-=d;
 	e=a>=c?c:a;c-=e;
 	f=c/2;
 	s=d+e+f;
 	printf("%lld",s);
 }

C++(clang++11) 解法, 执行用时: 3ms, 内存消耗: 500K, 提交时间: 2020-12-26 18:05:21

#include<bits/stdc++.h>
int a,b,c;
int main(){
	std::cin>>a>>b>>c;
	std::cout<<(b>a?a+c/2:b+(a-b>c?c:(c+a-b)/2));
}

Python3(3.9) 解法, 执行用时: 19ms, 内存消耗: 2788K, 提交时间: 2020-12-26 18:39:48

a,b,c=map(int,input().split())
d=min(a,b)
e=min(a-d,c)
f=(c-e)//2
print(d+e+f)

上一题