bzoj 4880 [Lydsy1705月赛]排名的战争 贪心
[Lydsy1705月赛]排名的战争
Time Limit: 8 Sec Memory Limit: 256 MB
Submit: 338 Solved: 69
[Submit][Status][Discuss]
Description
Input
Output
Sample Input
7 7
11 10
8 5
1 1
12 12
Sample Output
HINT
Source
本OJ付费获得
只和w1,w2比值有关,那么就可以固定w2,然后不断调大w1就可以了
1 #include<iostream> 2 #include<cstdlib> 3 #include<cstdio> 4 #include<cstring> 5 #include<ctime> 6 #include<cmath> 7 #include<algorithm> 8 #include<iomanip> 9 #include<queue> 10 #include<map> 11 #include<bitset> 12 #include<stack> 13 #include<vector> 14 #include<set> 15 using namespace std; 16 #define MAXN 100010 17 #define MAXM 1010 18 #define INF 1000000000 19 #define MOD 1000000007 20 #define ll long long 21 #define eps 1e-8 22 struct data{ 23 double v; 24 int c; 25 friend bool operator <(data x,data y){ 26 return x.v<y.v; 27 } 28 }; 29 int n; 30 int x[MAXN],y[MAXN]; 31 int low=1,high=INF; 32 data t[MAXN]; 33 int tot; 34 int main(){ 35 int i; 36 scanf("%d",&n); 37 for(i=1;i<=n;i++){ 38 scanf("%d%d",&x[i],&y[i]); 39 } 40 int tlowx=1,thighx=1,tlowy=1,thighy=1; 41 for(i=2;i<=n;i++){ 42 if(x[i]>x[1]){ 43 thighx++; 44 } 45 if(x[i]>=x[1]){ 46 tlowx++; 47 } 48 if(y[i]>y[1]){ 49 thighy++; 50 } 51 if(y[i]>=y[1]){ 52 tlowy++; 53 } 54 } 55 low=max(low,max(tlowx,tlowy)); 56 high=min(high,min(thighx,thighy)); 57 int tlow=1,thigh=1; 58 for(i=2;i<=n;i++){ 59 if(y[i]==y[1]){ 60 if(x[i]>=x[1]){ 61 tlow++; 62 } 63 if(x[i]>x[1]){ 64 thigh++; 65 } 66 continue ; 67 } 68 if(y[i]<y[1]){ 69 t[++tot].v=1000.*(x[1]-x[i])/(y[i]-y[1]); 70 t[tot].c=-1; 71 tlow++; 72 thigh++; 73 } 74 if(y[i]>y[1]){ 75 t[++tot].v=1000.*(x[1]-x[i])/(y[i]-y[1]); 76 t[tot].c=1; 77 } 78 if(t[tot].v<=0){ 79 tlow+=t[tot].c; 80 thigh+=t[tot].c; 81 tot--; 82 } 83 } 84 if(tot){ 85 sort(t+1,t+tot+1); 86 for(i=1;i<=tot;){ 87 int wzh=i; 88 int tc0=0,tc1=0; 89 while(wzh<=tot&&fabs(t[wzh].v-t[i].v)<eps){ 90 if(t[wzh].c==1){ 91 tc1++; 92 }else{ 93 tc0++; 94 } 95 wzh++; 96 } 97 low=max(low,tlow+tc1); 98 high=min(high,thigh-tc0); 99 tlow+=tc1-tc0; 100 thigh+=tc1-tc0; 101 i=wzh; 102 } 103 } 104 printf("%d %d\n",high,low); 105 }
转载于:https://www.cnblogs.com/fengzhiyuan/p/8682210.html
bzoj 4880 [Lydsy1705月赛]排名的战争 贪心相关推荐
- bzoj 4883 [Lydsy1705月赛]棋盘上的守卫 题解(思维,建图,最小基环森林)
原题链接: bzoj 题意简述 一个 n ∗ m n*m n∗m的矩阵,要放 n + m n+m n+m个守卫,每个守卫只能守住所在行或所在列(只能选择一个).在 i , j i,j i,j位置上放守 ...
- bzoj 5092: [Lydsy1711月赛]分割序列
5092: [Lydsy1711月赛]分割序列 Time Limit: 5 Sec Memory Limit: 256 MB Submit: 219 Solved: 100 [Submit][St ...
- 【Nowcoder】牛客小白月赛26 H 保卫家园 | 贪心、扫描线
emmm-考试周一天一套小白月赛保持手感- 别问为什么,怕被太难的题卡的挂科- 本来不想写什么题解,不过这题确实有妙处,就记录一下吧 题目大意: 为了抵御深渊的蔓延,被深渊毁掉家园的人们组建法兰不死队 ...
- BZOJ 1124: [POI2008]枪战Maf(构造 + 贪心)
题意 有 \(n\) 个人,每个人手里有一把手枪.一开始所有人都选定一个人瞄准(有可能瞄准自己).然后他们按某个顺序开枪,且任意时刻只有一个人开枪. 因此,对于不同的开枪顺序,最后死的人也不同. 问最 ...
- bzoj 2457 [BeiJing2011]双端队列 模拟+贪心
[BeiJing2011]双端队列 Time Limit: 10 Sec Memory Limit: 128 MB Submit: 457 Solved: 203 [Submit][Status] ...
- BZOJ 1685 [Usaco2005 Oct]Allowance 津贴:贪心【给硬币问题】
题目链接:http://begin.lydsy.com/JudgeOnline/problem.php?id=1333 题意: 有n种不同币值的硬币,并保证大币值一定是小币值的倍数. 每种硬币的币值为 ...
- BZOJ 3993 Luogu P3324 [SDOI2015]星际战争 (最大流、二分答案)
字符串终于告一段落了! 题目链接: (bzoj) https://www.lydsy.com/JudgeOnline/problem.php?id=3993 (luogu) https://www.l ...
- [bzoj 4811] 由乃的OJ(贪心 + 树链剖分)
前置技能:[Noi2014]起床困难综合症. 不难看出,这道题其实就是上一道题的加强版 在上一道题中,因为位运算时位与位之间互不干扰 所以从高位到低位枚举初始值二进制上的每一位为0和为1时,经过n次计 ...
- BZOJ 1193: [HNOI2006]马步距离【贪心+搜索】
1193: [HNOI2006]马步距离 [题目描述] 传送门 [题解] 大范围贪心,然后小范围BFS,为了答案准确,尽量使这个小范围大,这题100就可以了. 代码如下 #include<que ...
最新文章
- C#Winform窗体实现服务端和客户端通信例子(TCP/IP)
- python输入十个数输出最大值_python输入十个数如何输出最大值
- C语言__LINE__实现原理
- L1-055 谁是赢家-PAT团体程序设计天梯赛GPLT
- Guava CaseFormat
- 帆软获取单元格值与赋值
- [NOIP2016]愤怒的小鸟
- Intellij IDEA 使用教程(史上最全,持续更新)
- tomcat 加载js 中文乱码
- JDY-10M蓝牙简易组网教程
- 转《牵一只蜗牛去散步》
- Deep Unordered Composition Rivals Syntactic Methods for Text Classification
- 法拉利虚拟学院2010 服务器,法拉利虚拟学院
- 有关计算机的英语文献及其翻译,计算机专业外文文献论文翻译1
- Java入门第三季-综合实战:简易扑克牌游戏
- kubeadm搭建Kubernetes集群v1.16
- java学籍管理系统课设报告,java课程设计学籍管理系统.doc
- 树莓派+温度传感器实现室内温度监控
- THB6128步进电机驱动芯片介绍
- Ubuntu下使用ipmsg(飞鸽传书)
热门文章
- mp4无法用于直播流
- HAProxy高并发问题解决
- BDB (Berkeley DB)数据库简单介绍(转载)
- unix、linux 命令
- google圣诞节彩蛋
- Introduction to Financial Management
- 理解spark闭包以及broadcast(转载)
- 用editplus批量修改文件编码最快速的方法
- oracle xml文件是什么文件,介绍关于Oracle下存取XML格式数据的方式
- 深度学习(二十二)——ESPCN, FSRCNN, VESPCN, SRGAN, DemosaicNet, MemNet, RDN, ShuffleSeg