Atcoder 080 E
来源:互联网 发布:程序员客栈 编辑:程序博客网 时间:2024/06/06 02:34
#include<iostream>#include<vector>#include<algorithm>using namespace std;vector<int> ans;int n;const int INF = 0x3f3f3f;void solve(vector<int> dir,int f,int s){if (dir.empty()) return;int maxhead = 0, cnt = 0,down;for (int i = 0; i < dir.size()-1; ++i) {if (dir[i] != f && dir[i] != s) {if (dir[i + 1] != f && dir[i + 1] != s) {if (dir[i] > maxhead) {cout << "ok" << endl;cout << i << endl;maxhead = dir[i];down = i;}}}}cout << down << endl;ans.push_back(dir[down + 1]); ans.push_back(dir[down]);vector<int> nex;for (int i = 0; i < dir.size(); ++i) {if (i != down && i!=down+1) {nex.push_back(dir[i]);}}solve(nex, f, s);}int main(){vector<int> iv; int temp,goalf=INF,goals=INF;cin >> n;for (int i = 0; i < n; ++i) {cin >> temp;iv.push_back(temp);if (temp < goalf && !(i%2)) {goalf = temp;}}int i;for (i = 0; iv[i] != goalf; ++i);for (int j = i + 1; j < n; ++j) {if (iv[j] < goals) {goals = iv[j];}}cout << goalf << " " << goals << endl;solve(iv,goalf,goals);reverse(ans.begin(), ans.end());for (int i = 0; i < ans.size(); ++i) {cout << ans[i] << " ";}cout << endl;system("pause");return 0;}
这道题自己原来想出来一个解法,但很遗憾有几点错误。
1.编译不通过,显示我的down没有初始化(但是我用的测试数据真的显示我的if()进去了啊)!
2.思维确实还不够严密,第二个数必须是在第一个数之后而且在整个数组中应该是在偶数位(从1开始)
参考了别人的题解,说是要用线段树,于是自学了一下线段树:
http://www.cnblogs.com/TenosDoIt/p/3453089.html
(感觉介绍的还挺清楚的)
接下来附上自己的代码(希望以后自己能够弄清楚这个问题):
阅读全文
0 0
- Atcoder 080 E
- AtCoder 080E Young Maids
- AtCoder Regular Contest 080 E
- AtCoder Regular Contest 080 E
- AtCoder 077E gururu
- Atcoder ARC 077 E
- 【AtCoder】(AtCoder Grand Contest 004)E
- 【AtCoder】(square869120Contest #3)E
- Atcoder Grand Contest 011E
- Atcoder Grand Contest 013E
- AtCoder Regular Contest 077 E
- AtCoder Regular Contest 077 E
- AtCoder Regular Contest 075 E
- AtCoder Grand Contest 018 E
- AtCoder Regular Contest 079-E
- AtCoder regular contest 081 E
- AtCoder Grand Contest 019 E
- AtCoder Grand Contest 001 E
- CentOS下CDH5.8.2本地包安装
- JQuery中Ajax的Post提交中文乱码、windows.location.href 中文汉字乱码和springmvc使用原生态HttpServletRequest接收参数中文乱码解决办法
- java I/O 流的操作规律 小结
- python笔记
- netty
- Atcoder 080 E
- 关于自动化的一点想法
- 解决tomcat每次重启丢失项目文件的问题
- Unity 回合制战斗系统(初级篇)
- 2017百度之星初赛:A-1001. 小C的倍数问题
- git学习笔记
- Python基础-*args和**kwargs魔法变量
- 类加载机制
- 3 HTTP协议