LightOJ - 1166 Old Sorting(贪心)
2015-11-06 22:32
453 查看
题目大意:给你N个数字(1–N),要求你将这N个数字排序,使得这N个数字生序。排序的操作:只能交换两个数字的位置
问至少需要几次操作
解题思路:按照贪心的想法,交换数字的时候,直接交换到所处的位置即可,这个方法是最优的
问至少需要几次操作
解题思路:按照贪心的想法,交换数字的时候,直接交换到所处的位置即可,这个方法是最优的
#include <cstdio> #include <cstring> const int N = 110; int val , pos ; bool vis ; int n, cas = 1; void init() { scanf("%d", &n); for (int i = 1; i <= n; i++) { scanf("%d", &val[i]); pos[val[i]] = i; } } void solve() { int ans = 0; for (int i = 1; i <= n; i++) { if (val[i] == i) continue; else { ans++; val[pos[i]] = val[i]; pos[val[i]] = pos[i]; } } printf("Case %d: %d\n", cas++ ,ans); } int main() { int test; scanf("%d", &test); while (test--) { init(); solve(); } return 0; }
相关文章推荐
- Product of Array Except Self
- U盘无法安装win10提示Your PC/Device needs to be repaired
- 正则表达式
- cocos2d-x设计模式发掘之三:管理者模式
- U盘无法安装win10提示Your PC/Device needs to be repaired
- 【Matlab开发】matlab中norm范数以及向量点积、绘图设置相关
- Spark到底解决了什么根本性的技术问题?
- JAVA中3大集合框架队列的使用
- cocos2d-x设计模式发掘之二:二段构建模式
- CentOS7安装JDK1.8
- Ubuntu下安装Intellij IDEA和PyCharm
- LightOJ - 1076 Get the Containers(二分)
- OnItemClickListener与OnScrollListener监听器
- 算法策略的总结
- 监督学习(机器学习)
- 树形dp题集之树的直径
- LightOJ - 1048 Conquering Keokradong(贪心)
- fastdfs环境搭建
- 14 Longest Common Prefix
- ScrollView 获取滑动方向