题解 | 相助(easy)

相助(easy)

https://www.nowcoder.com/practice/4560f289b34f4fbd9ce05abb7c5aabee

#include <iostream>
#include<vector>

using namespace std;

int main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);

    int n;
    cin>>n;
    if(n==1){
        cout<< -1 <<endl;
        return 0;
    }
    int sum_0=0,sum_1=0;
    vector<int>a(n);
    for(int i=0;i<n;i++){
        cin>>a[i];
        if(a[i]==0)sum_0++;
        else sum_1++;
    }
    if(sum_0==1&&a[0]==0||a[n-1]==0&&sum_0==1){
        cout<< -1 <<endl;
        return 0;
    }
    else if(sum_1==1&&a[0]==1||a[n-1]==1&&sum_1==1){
        cout<< -1 <<endl;
        return 0;
    }
    if(a[0]==a[n-1])cout<< 1 <<endl;
    else {
        if(a[0]==1){
            for(int i=1;i<n;i++){
                if(a[i]==1&&a[i+1]==0&&i+1<n-1){
                    cout<< 2 <<endl;
                    return 0;
                }
            }
        }else{
            for(int i=1;i<n;i++){
                if(a[i]==0&&a[i+1]==1&&i+1<n-1){
                    cout<< 2 <<endl;
                    return 0;
                }
            }
        }
        cout<< -1 <<endl;
    }









}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

04-15 13:42
四川大学 Java
蹲蹲offerrr:快投吧,有点晚现在
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务