Problem I : Buildings
来源:互联网 发布:hadoop与java 编辑:程序博客网 时间:2024/06/07 03:53
The public opinion is that Guanghua Building is nothing more than one of hundreds of modern skyscrapers recently built in Shanghai, and sadly, they are all wrong. Blue.Mary the great civil engineer had try a completely new evolutionary building method in project of Guanghua Building. That is, to build all the floors at first, then stack them up forming a complete building.
Believe it or not, he did it (in secret manner). Now you are face the same problem Blue.Mary once stuck in: Place floors in a good way.
Each floor has its own weight wi and strength si. When floors are stacked up, each floor has PDV(Potential Damage Value) equal to (Σwj)-si, where (Σwj) stands for sum of weight of all floors above.
Blue.Mary, the great civil engineer, would like to minimize PDV of the whole building, denoted as the largest PDV of all floors.
Now, it’s up to you to calculate this value.
In each test case, in the first line is a single integer N (1 <= N <= 105) denoting the number of building’s floors. The following N lines specify the floors. Each of them contains two integers wi and si (0 <= wi, si <= 100000) separated by single spaces.
Please process until EOF (End Of File).
If no floor would be damaged in a optimal configuration (that is, minimal PDV is non-positive) you should output 0.
310 62 35 422 22 2310 32 53 3
102
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
struct node{
int w,s,num;
node(int a=0,int b=0,int c=0){
w=a;
s=b;
num=c;
}
friend bool operator <(node x,node y){
return x.num<y.num;
}
};
vector<node>ve;
int main(){
int n;
while(cin>>n){
int a,b;
ve.clear();
for(int i=0;i<n;i++){
cin>>a>>b;
node nd(a,b,a+b);
ve.push_back(nd);
}
sort(ve.begin(),ve.end());
long long sum=0,mx=0-ve[0].s;
for(int i=0;i+1<ve.size();i++){
sum=sum+ve[i].w;
if(sum-ve[i+1].s>mx)
mx=sum-ve[i+1].s;
}
cout<<mx<<endl;
}
return 0;
}
- Problem I : Buildings
- 2012 成都网络赛I题 Buildings
- Buildings
- Buildings
- Buildings
- Buildings
- Buildings
- Buildings
- Buildings
- Buildings
- Buildings
- Buildings
- Buildings
- Problem I
- Problem I
- Problem I
- Problem I
- Problem I
- css自定义字体
- 求二元查找树的镜像
- MFC 的总结
- c++ 二叉树 的递归建立和递归遍历
- maven一键部署tomcat war包
- Problem I : Buildings
- Web实时更新客户端数据
- 软件版本一览
- java_加密解密
- ThreadLocal、ThreadLocalMap弱引用key
- Java访问控制
- 学习笔记_容器
- 为什么程序员总被认为是屌丝群体?5t顺广州
- 为什么程序员总被认为是屌丝群体?9x欢樟树