P7176 [COCI 2014/2015 #4] PRIPREME
题目描述
Ante 和 Goran 正在准备 n n n 个团队。他们每个人各有一个算法需要向所有团队讲解。
当然,他们不能两人同时对同一个团队讲解,也不能同时对多个团队讲解。
给定对每个团队讲解所需的时间,你需要确定讲解所需的最少时间。
输入格式
第一行输入包含整数 n n n,即团队数量。
下一行包含 n n n 个空格分隔的整数 a i a_i ai,表示对第 i i i 个团队讲解所需的时间。
输出格式
仅一行,即讲解所需的最少时间。
输入输出样例 #1
输入 #1
3
2 2 2
输出 #1
6
输入输出样例 #2
输入 #2
3
4 1 2
输出 #2
8
输入输出样例 #3
输入 #3
4
1 3 2 1
输出 #3
7
说明/提示
样例 1 说明
每个团队都需要 2 2 2 个单位时间来理解和实现一个算法,以下是一种可行的授课方法。
Ante | Goran | 用时 |
---|---|---|
团队 1 | 团队 2 | 2 2 2 |
团队 2 | 团队 3 | 2 2 2 |
团队 3 | 团队 1 | 2 2 2 |
全部完成 | 全部完成 | 6 6 6 |
样例 2 说明
其中一种最佳的时间安排是 Ante 依次给团队 2 , 3 , x , 1 2,3, {\color{red}x},1 2,3,x,1 讲解,但是在 x \color{red}x x 中有一个 1 1 1 个单位时间的暂停。Goran 将依次给团队 1 , 3 , 2 1,3,2 1,3,2 讲课。
数据规模与约定
- 对于 40 % 40\% 40% 的数据,有 1 ≤ n ≤ 7 1\le n\le 7 1≤n≤7。
- 对于 100 % 100\% 100% 的数据,有 1 ≤ n ≤ 3 × 1 0 5 1\le n\le 3\times 10^5 1≤n≤3×105。
对于所有合法的 a i a_i ai,都有 a i ∈ [ 1 , 3 × 1 0 5 ] a_i\in [1,3\times 10^5] ai∈[1,3×105]。
说明
题目译自 COCI2014-2015 CONTEST #4 T3 PRIPREME。
C++实现
#include<bits/stdc++.h>
using namespace std;
long long int n,x,maxn,k;//不开long long见祖宗
int main()
{
cin>>n;
while(n--){
cin>>x;
maxn=max(x,maxn);//最大值
k+=x;//和
}
if(maxn>k-maxn)cout<<maxn*2;//按照上面进行判断
else cout<<k;
return 0;
}
后续
接下来我会不断用C++来实现信奥比赛中的算法题、GESP考级编程题实现、白名单赛事考题实现,记录日常的编程生活、比赛心得,感兴趣的请关注,我后续将继续分享相关内容