【OJ】贪心法 (区间问题——木棒)1129/

简介: 题目链接:点击打开链接 /* 贪心法 (区间问题——木棒)1129/ */ #include#include#includeusing namespace std;const int maxn=5010;typedef pair P;pairit...

题目链接:点击打开链接

/*

贪心法 (区间问题——木棒)1129/

*/

#include<iostream>
#include<algorithm>
#include<string.h>
using namespace std;
const int maxn=5010;
typedef pair<int,int> P;
pair<int,int>itv[maxn];
int ok[maxn];
bool comp( P  a,const P & b){     //const &
	if (a.second==b.second)return a.first<b.first;//
//	else return false;
	return a.second<b.second;
}
int main(){
///	freopen("贪心(区间).txt","r",stdin);
	int t;cin>>t;
	while(t--){
		int n;cin>>n;
		memset(ok,0,sizeof(ok));
		for(int i=0;i<n;i++){
			cin>>itv[i].first>>itv[i].second;///
		}
//		sort(itv,itv+n);//sort first defaultly.
		sort(itv,itv+n,comp);//can sort first or second
	//	for(int j=0;j<n;j++)//sort the first of itv;
		//	cout<<itv[j].first<<" "<<itv[j].second<<endl; 
		int ll,ans=0,count=0;
		for(int i=0;i<n;i++){		
			for(int k=0;k<n;k++)
				if(!ok[k]){
					ll=itv[k].first;
					ok[k]=1;
					ans++;count++;break;				
				}		
			for(int j=0;j<n;j++)
				if(!ok[j]&&ll<=itv[j].first){
					ok[j]=1;
					ll=itv[j].first;
					count++;
				}
			if(count==n)break;	
		}
		cout<<ans<<endl;		
	}
	return 0;
}



目录
相关文章
|
5月前
|
算法 测试技术 C#
【单调队列】LeetCode1499:满足不等式的最大值
【单调队列】LeetCode1499:满足不等式的最大值
【单调队列】LeetCode1499:满足不等式的最大值
|
人工智能
【动态规划刷题 11】等差数列划分&& 最长湍流子数组
【动态规划刷题 11】等差数列划分&& 最长湍流子数组
【动态规划刷题 16】最长等差数列 (有难度) && 等差数列划分 II - 子序列
【动态规划刷题 16】最长等差数列 (有难度) && 等差数列划分 II - 子序列
|
5月前
|
C++
2589. 完成所有任务的最少时间(区间取点——贪心or线段树)
2589. 完成所有任务的最少时间(区间取点——贪心or线段树)
|
5月前
【每日一题Day170】LC1040移动石子直到连续 II | 双指针 贪心 数学
【每日一题Day170】LC1040移动石子直到连续 II | 双指针 贪心 数学
41 1
|
5月前
【每日一题Day192】LC1033移动石子直到连续 | 分类讨论 贪心
【每日一题Day192】LC1033移动石子直到连续 | 分类讨论 贪心
28 0
|
5月前
【每日一题Day122】LC1237找出给定方程的正整数解 | 双指针 二分查找
【每日一题Day122】LC1237找出给定方程的正整数解 | 双指针 二分查找
37 0
|
12月前
|
存储 人工智能 算法
剑指offer(C++)-JZ85:连续子数组的最大和(二)(算法-动态规划)
剑指offer(C++)-JZ85:连续子数组的最大和(二)(算法-动态规划)
|
12月前
|
存储 人工智能 算法
剑指offer(C++)-JZ42:连续子数组的最大和(算法-动态规划)
剑指offer(C++)-JZ42:连续子数组的最大和(算法-动态规划)
LeetCode: 16. 最接近的三数之和 | 双指针专题
【LeetCode: 16. 最接近的三数之和 | 双指针专题 】
53 1