打印极值点下标
打印极值点下标
http://www.nowcoder.com/questionTerminal/7fd72f8ac7964ba3b8baa8735246e1f1
思路
遍历比较一遍就好了
#include<iostream> #include<vector> using namespace std; int main(){ int n; while(cin >> n){ vector<int> nums(n, 0); for(int i = 0; i < n; i ++) cin >> nums[i]; if(nums[0] != nums[1]) cout << 0 << " "; for(int i = 1; i < n - 1; i ++){ if((nums[i] - nums[i - 1]) * (nums[i] - nums[i + 1]) > 0) cout << i << " "; } if(nums[n - 1] != nums[n - 2]) cout << n - 1; cout << endl; } return 0; }
算法题解 文章被收录于专栏
不定期更新一些算法题解,有什么问题可以随时留言~