题解 | 预知

预知

https://www.nowcoder.com/practice/d9dd8fb2f4ca4385b3728b7bf9c9d0a4

#include <bits/stdc++.h>
using namespace std;
const int N = 2e5 + 10;

int a[N];

void solve() {
    int n; cin >> n;
    for (int i = 1; i <= n; i ++ ) cin >> a[i];
    if (n == 1) {
        cout << -1 << endl;
        return ;
    }
    int mx = -1;
    for (int i = 1; i <= n; i ++){
        mx = max(mx, a[i]);
    }
    if (mx == 1) cout << 0 << endl;
    else {
        int cnt = 0;
        for (int i = 1; i <= n; i ++ ) {
            if (a[i] > 1) cnt ++;
        }
        if (cnt == 1) cout << mx - 1 << endl;
        else cout << mx << endl;
    }
}

int main(){
    int T; cin >> T;
    while (T -- ) solve();
    return 0;
}

全部评论

相关推荐

简历求拷打,海投简历发过去就已读不回了求大佬们指点
程序员牛肉:基本不能了,估计你得放弃秋招,九月份找实习之后明年的春招开始正式找工作
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
06-18 17:37
点赞 评论 收藏
分享
lllllkin:感觉可以精简到一页简历,有些排版感觉不是必须的。 时间线越早的,你自己越熟悉的放前面。描述可以更精简些,一些问题解决感觉可以不用写具体技术栈,卖个关子,等面试官问。
点赞 评论 收藏
分享
06-11 13:34
门头沟学院 C++
offe从四面八方来:我真的没时间陪你闹了
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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