HDU 5821 Ball 贪心
来源:互联网 发布:变形金刚弹簧淘宝 编辑:程序博客网 时间:2024/05/17 20:22
传送门:HDU5821
题意:有N个盒子,每个盒子最多装一个球. 球的颜色不一定相同.现在要进行m次区间操作:
每次操作将[l, r]区间内的球拿出来后,再随意将区间内的球重新分配回去.
问经过上述操作后是否有可能达到给定的状态.
思路:先贪心的给每个球在b数组中找个位置,然后每次选一个区间就相当于对这个区间排序,使得每个球朝其位置方向去,最后判断一下是不是每个球都在目标位置上就行了。
代码:
#include<bits/stdc++.h>#define ll long long#define pi acos(-1)#define MAXN 1010#define inf 0x3f3f3f3fusing namespace std;typedef pair<int,int>P;P a[MAXN];int main(){int T, n, m, t, l, r;cin >> T;while(T--){scanf("%d %d", &n, &m);for(int i = 1; i <= n; i++)scanf("%d", &a[i].second), a[i].first = 0;for(int i = 1; i <= n; i++){scanf("%d", &t);for(int j = 1; j <= n; j++)if(a[j].first == 0 && a[j].second == t){a[j].first = i;break;}}while(m--){scanf("%d %d", &l, &r);sort(a + l, a + r + 1);}bool flag = 0;for(int i = 1; i <= n; i++){if(a[i].first != i) flag = 1;}if(flag) cout << "No\n";else cout << "Yes\n";} return 0;}
阅读全文
0 0
- Hdu-5821 Ball(贪心)
- HDU 5821 Ball【贪心】
- HDU 5821 Ball 贪心
- HDU 5821 Ball(贪心)
- [HDU 5821] Ball (贪心)
- HDU 5821 Ball (贪心)
- HDU 5821 Ball ( 贪心)
- HDU 5821 Ball 贪心+映射
- HDU-5821-Ball(贪心)
- HDU 5821-A - Ball-贪心
- HDU 5821 Ball(贪心)
- HDU 5821 Ball(贪心)
- Hdu 5821 Ball 贪心+模拟
- 贪心(Ball,HDU 5821)
- hdu 5821 Ball 贪心+思维
- hdu 5821 Ball 贪心(多校)
- HDU 4811 Ball(贪心)
- HDU 4811 Ball(贪心)
- c/c++函数指针
- JAVA实训第二节(条件语句,循环和数组)
- 用户的身份证号和手机号验证
- 关于tensorflow的基本语法知识
- Apache基金会项目介绍
- HDU 5821 Ball 贪心
- java多线程方法的总结
- Mac下配置alias,zsh终端命令别名
- 细读表单设计案例
- JavaWeb 分层思想
- ubuntu下安装GnuPG
- python自然语言处理学习笔记1—install NLTK
- visual studio2017 python3安装beautifulsoup4
- saliency detection by forward and backward cues in deep-cnn