ACM-ICPC 2015 BeiJing
本次比赛只写了 A G 然后 I题随后补
A
有一个正方形土地,上面有若干块绿洲。让你以x0为界限划一条竖线,要求左边绿洲面积>=右边绿洲面积且两者面积最接近。另外要求左边的土地总面积最大。求x0
二分 or 扫描线
// 二分
#include<bits/stdc++.h>
using namespace std;
#define maxn 100010
#define LL long long
struct ac{
LL x,y,l,h;
}a[maxn];
LL n;
bool cmp(ac q,ac w){
return q.x<w.x;
}
LL work(LL mid){
LL ans=;
;j<n;j++){
if(a[j].l+a[j].x<=mid){
ans+=a[j].l*a[j].h;
}
else if(a[j].x<=mid&&(a[j].x+a[j].l)>=mid){
ans+=(mid-a[j].x)*a[j].h;
}else return ans;
}
return ans;
}
int main(){
LL t;
cin>>t;
while(t--){
LL r,sum=;
cin>>r>>n;
;j<n;j++){
cin>>a[j].x>>a[j].y>>a[j].l>>a[j].h;
if(a[j].x+a[j].l>=r){
a[j].l=r-a[j].x;
}
sum+=a[j].l*a[j].h;
}
//cout<<sum<<endl;
sort(a,a+n,cmp);
LL ll=,rr=r+,ans;
while(ll<rr){
LL mid=(ll+rr)/;
ans=;
LL ans=work(mid);
<sum){
ll=mid+;
}else rr=mid;
}
//cout<<ll<<" "<<rr<<endl;
ans=work(ll);
while(work(ll)<=ans&&ll<=r){
ll++;
}
cout<<ll-<<endl;
}
}
// 扫描线
#include<bits/stdc++.h>
using namespace std;
#define maxn 1000010
#define LL long long
LL a[maxn];
int main(){
LL t;
cin>>t;
while(t--){
LL n,r,sum=;
cin>>r>>n;
memset(a,,sizeof(a));
;j<n;j++){
LL x,y,z,zz;
cin>>x>>y>>z>>zz;
;k<=x+z;k++){
a[k]+=zz;
}
sum+=(min(r,x+z)-x)*zz;
}
LL ans=,j;
;j<r&&ans*<sum;j++){
ans+=a[j];
//cout<<ans<<" "<<j<<endl;
}
&&j<=r){
j++;
}
cout<<j-<<endl;
}
}
G
给你四个矩形 选出来三个看是否可以组成新的矩阵
数据很小直接全排列暴力枚举
#include<bits/stdc++.h>
using namespace std;
struct ac{
int x,y;
}a[];
];
bool work(){
;
]].x;
]].y;
]].x;
]].y;
]].x;
]].y;
if(w==ww){
h+=hh;
i=;
}else if(w==hh){
h+=ww;
i=;
}else if(h==ww){
w+=hh;
i=;
}else if(h==hh){
w+=ww;
i=;
}
) ;
i=;
if(www==w){
i=;
}else if(w==hhh){
i=;
}else if(h==www){
i=;
}else if(h==hhh){
i=;
}
if(i)
;
;
}
int main(){
int t;
cin>>t;
while(t--){
;j<;j++){
cin>>a[j].x>>a[j].y;
b[j]=j;
}
;
do{
if(work()){
fa=;
break;
}
}));
if(fa){
cout<<"Yes"<<endl;
}else cout<<"No"<<endl;
}
}
ACM-ICPC 2015 BeiJing的更多相关文章
- ACM ICPC 2015 Moscow Subregional Russia, Moscow, Dolgoprudny, October, 18, 2015 G. Garden Gathering
Problem G. Garden Gathering Input file: standard input Output file: standard output Time limit: 3 se ...
- ACM ICPC 2015 Moscow Subregional Russia, Moscow, Dolgoprudny, October, 18, 2015 D. Delay Time
Problem D. Delay Time Input file: standard input Output file: standard output Time limit: 1 second M ...
- ACM ICPC 2015 Moscow Subregional Russia, Moscow, Dolgoprudny, October, 18, 2015 I. Illegal or Not?
I. Illegal or Not? time limit per test 1 second memory limit per test 512 megabytes input standard i ...
- ACM ICPC 2015 Moscow Subregional Russia, Moscow, Dolgoprudny, October, 18, 2015 K. King’s Rout
K. King's Rout time limit per test 4 seconds memory limit per test 512 megabytes input standard inpu ...
- ACM ICPC 2015 Moscow Subregional Russia, Moscow, Dolgoprudny, October, 18, 2015 H. Hashing
H. Hashing time limit per test 1 second memory limit per test 512 megabytes input standard input out ...
- ACM ICPC 2015 Moscow Subregional Russia, Moscow, Dolgoprudny, October, 18, 2015 C. Colder-Hotter
C. Colder-Hotter time limit per test 1 second memory limit per test 512 megabytes input standard inp ...
- ACM ICPC 2015 Moscow Subregional Russia, Moscow, Dolgoprudny, October, 18, 2015 A. Anagrams
A. Anagrams time limit per test 1 second memory limit per test 512 megabytes input standard input ou ...
- hdu 5444 Elven Postman(二叉树)——2015 ACM/ICPC Asia Regional Changchun Online
Problem Description Elves are very peculiar creatures. As we all know, they can live for a very long ...
- 2015 ACM / ICPC 亚洲区域赛总结(长春站&北京站)
队名:Unlimited Code Works(无尽编码) 队员:Wu.Wang.Zhou 先说一下队伍:Wu是大三学长:Wang高中noip省一:我最渣,去年来大学开始学的a+b,参加今年区域赛之 ...
- (并查集)Travel -- hdu -- 5441(2015 ACM/ICPC Asia Regional Changchun Online )
http://acm.hdu.edu.cn/showproblem.php?pid=5441 Travel Time Limit: 1500/1000 MS (Java/Others) Memo ...
随机推荐
- 对B+树,B树,红黑树的理解
出处:https://www.jianshu.com/p/86a1fd2d7406 写在前面,好像不同的教材对b树,b-树的定义不一样.我就不纠结这个到底是叫b-树还是b-树了. 如图所示,区别有以下 ...
- jQuery EasyUI 选项卡面板tabs使用实例精讲
1. 对选项卡面板区域 div 设置 class=”easyui-tabs” 2. 对选项卡面板区域添加多个 div,每个 div 就是一个选项卡(每个面板一定设置 title) 3. 设置面板 fi ...
- JS对象、基本类型和字面量的区别
字面值: var str1='this is a simple string'; var num1=1.45; var answer1=true; 基本类型: var str2=String('thi ...
- JS学习笔记 等于和包装对象
严格等于 a===b 首先判断两边数据的类型,若类型不同,返回false. 若类型相同(1.2和1.2,字符串相等指内容和长度都是一样的),返回true null===null undefined== ...
- 获取DataSet中某行某列的数据
LabelText = DataSet11.Tables("COMM.USERS").Rows[0]["User_Name"].tostring() Label ...
- Java之XML操作:从XML中直接获取数据
本文介绍如何将数据记录在XML文件中,然后通过DOM4J直接从XML中读取到数据. 依赖包: <dependency> <groupId>dom4j</groupId&g ...
- SharePoint Server 2016 - Configure Office Online Server
Step 1: Create the binding between SharePoint 2016 and Office Web Apps Server To get started, open ...
- 当页面是动态时 如果后台存储id可以通过查询后台方式获取对象;当后台没有存储时候 只有通过前端标记了 例如标记数量为10 我们根据传递过来的10循环取值
当页面是动态时 如果后台存储id可以通过查询后台方式获取对象;当后台没有存储时候 只有通过前端标记了 例如标记数量为10 我们根据传递过来的10循环取值
- BZOJ4177Mike的农场——最小割
题目描述 Mike有一个农场,这个农场n个牲畜围栏,现在他想在每个牲畜围栏中养一只动物,每只动物可以是牛或羊,并且每个牲畜围栏中的饲养条件都不同,其中第i个牲畜围栏中的动物长大后,每只牛可以卖a[i] ...
- BZOJ3224普通平衡树——非旋转treap
题目: 此为平衡树系列第一道:普通平衡树您需要写一种数据结构,来维护一些数,其中需要提供以下操作:1. 插入x数2. 删除x数(若有多个相同的数,因只删除一个)3. 查询x数的排名(若有多个相同的数, ...