高级光能
求思路,核心!!
ps:我笨,详细一点
龙舟在2020-08-24 14:51:18追加了内容
#include<iostream>
#include<cmath>
#include<iomanip>
#include<string>
#include<algorithm>
#include<cstdio>
using namespace std;
int a[100010],b[110000],sum;
bool cmp(int x,int y){
return x>y;
}
int main()
{
int n;
cin>>n;
for(int i=1;i<=n;i++) cin>>a[i];
for(int i=1;i<=2;i++) b[i]=a[i];
for(int i=3;i<=n;i++){
int minn=0x3f3f3f3f,pos;
for(int j=1;j<=2;j++){
if(b[j]<minn){
minn=b[j];
pos=j;
}
}
b[pos]+=a[i];
}
sort(b+1,b+1+n,cmp);
for(int i=1;i<=n;i++)
{
sum+=a[i];
}
cout<<sum+b[1];
return 0;
}
0分代码
龙舟在2020-08-24 15:01:52追加了内容
大家快来呀!!!!!
急
资深光能
//Coding
/*特殊情况处理*/
/*排序*/
/*分组处理,贪心分组,因为具有这种性质*/
你的QQ是多少?听不懂我可以给你讲讲
初级天翼
你学贪心了?贪心很简单的,思路如下:
这个不是简单的一个像是贪心模拟接水的问题,你是要考虑哪个水龙头先空出来就去那里接水
所以要 t1:记录第一个水龙头结束时间 t2:记录第二个水龙头结束时间
然后比较哪个结束时间早去那个水龙头
思路较为简单,代码实现也简单,只要判断t1和t2大小就行了,哪个小去那边