打印极值点下标

打印极值点下标

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;
}
算法题解 文章被收录于专栏

不定期更新一些算法题解,有什么问题可以随时留言~

全部评论

相关推荐

牛客604067584号:我9月初投递10月入池,泡到现在。hr全部离职,当然没离职的时候也联系不上。我发邮件给campus也不回我
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务