hdoj1051Wooden Sticks
/*这道题目是先要排序的,依照长度或者重量排都能够。
当长度(重量)同样时就依照重量(长度)排,
从大到小或从小到大都能够!
这里我懂的。没有问题!
排序之后,问题就能够简化,(如果依照长度不等时长度排,
长度等是依照重量排,我如果依照从大到小来排!)即求排序
后的全部的重量值最少能表示成几个集合。
长度就不用再管了,
从数组第一个数開始遍历,仅仅要重量值满足条件,那么这两个
木棍就满足条件!*/
- <span style="font-size:18px;">#include<stdio.h>
- #include<algorithm>
- #include<string.h>
- using namespace std;
- #define maxn 5010
- struct node{
- int l,w;
- }stk[maxn];
- bool cmp(node y,node x){
- if(x.l<y.l) return true;
- if(x.l==y.l&&x.w<y.w) return true;
- return false;
- }
- int main()
- {
- int visit[5010],t,n,sum;
- scanf("%d",&t);
- while(t--)
- {
- memset(visit,0,sizeof(visit));
- memset(&stk,0,sizeof(&stk));
- scanf("%d",&n);
- for(int i=0;i<n;i++)
- scanf("%d %d",&stk[i].l,&stk[i].w);
- sort(stk,stk+n,cmp);
- sum=0;
- for(int i=0;i<n;i++)
- {
- if(!visit[i])
- {
- for(int j=i;j<n;j++)
- if(stk[j].l>=stk[i].l&&stk[j].w>=stk[i].w&&!visit[j])
- visit[j]=1,stk[i].l=stk[j].l,stk[i].w=stk[j].w;
- sum++; //这个循环是重点。
- }
- }
- printf("%d\n",sum);
- }
- return 0;
- } </span>
hdoj1051Wooden Sticks的更多相关文章
- hdoj--1051--Wooden Sticks(LIS)
Wooden Sticks Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) To ...
- HDOJ 1051. Wooden Sticks 贪心 结构体排序
Wooden Sticks Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) To ...
- POJ 2653 Pick-up sticks (线段相交)
题意:给你n条线段依次放到二维平面上,问最后有哪些没与前面的线段相交,即它是顶上的线段 题解:数据弱,正向纯模拟可过 但是有一个陷阱:如果我们从后面向前枚举,找与前面哪些相交,再删除前面那些相交的线段 ...
- hduoj 1455 && uva 243 E - Sticks
http://acm.hdu.edu.cn/showproblem.php?pid=1455 http://uva.onlinejudge.org/index.php?option=com_onlin ...
- POJ 2653 Pick-up sticks【线段相交】
题意:n根木棍随意摆放在一个平面上,问放在最上面的木棍是哪些. 思路:线段相交,因为题目说最多有1000根在最上面.所以从后往前处理,直到木棍没了或者最上面的木棍的总数大于1000. #include ...
- POJ1065Wooden Sticks[DP LIS]
Wooden Sticks Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 21902 Accepted: 9353 De ...
- 【POJ 2653】Pick-up sticks 判断线段相交
一定要注意位运算的优先级!!!我被这个卡了好久 判断线段相交模板题. 叉积,点积,规范相交,非规范相交的简单模板 用了“链表”优化之后还是$O(n^2)$的暴力,可是为什么能过$10^5$的数据? # ...
- CF451A Game With Sticks 水题
Codeforces Round #258 (Div. 2) Game With Sticks A. Game With Sticks time limit per test 1 second mem ...
- POJ 2452 Sticks Problem
RMQ+二分....枚举 i ,找比 i 小的第一个元素,再找之间的第一个最大元素..... Sticks Problem Time Limit: 6000MS ...
随机推荐
- leetcode数组相关
目录 4寻找两个有序数组的中位数 11盛最多水的容器,42接雨水 15三数之和,16最接近的三数之和,18四数之和 26/80删除排序数组中的重复项, 27移除元素 31下一个排列 53最大子序和 5 ...
- curl强制下载文件
<?phpfunction download_remote_file_with_curl($file_url, $save_to) { $ch = curl_init(); curl_setop ...
- js软键盘
<<!DOCTYPE html><html><head> <title></title></head><body& ...
- 5.20 mybatis反向生成的映射文件xml(如果需要自己定义其他sql语句时如下)
解决mybatis-generator 生成的mapper.xml覆盖自定义sql的问题 mybatis-generator是个好工具,一建即可生成基本增删改成功能的mapper.xml.但这些是不够 ...
- Java基础学习(二)——对象
类:是抽象的概念集合,表示的是一个共性的产物,类之中定义的是属性和行为(方法): 对象:对象是一种个性的表示,表示一个独立的个体,每个对象拥有自己独立的属性,依靠属性来区分不同对象. 对象=实例 对象 ...
- 查看 Android App 的 versionCode
有 App 源码时,可以直接查看 AndroidManifest.xml 文件. <manifest android:versionName="1.4" android:ve ...
- hibernate_05_单表操作_对象类型
本篇使用hibernate输出一个对象(图片) 先写一个java类 package com.imooc.hibernate; import java.sql.Blob; import java.uti ...
- Python语言之常用函数
1.input(),raw_input() input() = eval( raw_input() ) 其中raw_input()将所有的输入当做字符串处理. eval(str [,globals [ ...
- BZOJ 1146: [CTSC2008]网络管理Network 带修改主席树_树套树_DFS序
Description M公司是一个非常庞大的跨国公司,在许多国家都设有它的下属分支机构或部门.为了让分布在世界各地的N个 部门之间协同工作,公司搭建了一个连接整个公司的通信网络.该网络的结构由N个路 ...
- 如何查看系统的界面,比如费用申请单的序时簿界面引用的是哪一个ListUi.快捷键alt+shift+d 然后选中该ListUI大框框,就可以看到引用的是哪一个了.
如何查看系统的界面,比如费用申请单的序时簿界面引用的是哪一个ListUi.快捷键alt+shift+d 然后选中该ListUI大框框,就可以看到引用的是哪一个了.