ABC351_C
  • 板块学术版
  • 楼主milk1234
  • 当前回复5
  • 已保存回复5
  • 发布时间2024/4/28 20:14
  • 上次更新2024/4/28 21:59:55
查看原帖
ABC351_C
774110
milk1234楼主2024/4/28 20:14
#include <bits/stdc++.h> 
using namespace std;  
int solve(vector<int>& A) {  
    stack<int> s;  
    for (int a : A) {  
        int x = 1 << a;
        if (!s.empty() && s.top() == x) {  
            s.pop();
            if (!s.empty()) {  
                s.top() += x;  
            } else {  
                s.push(x);  
            }  
        } else {  
            s.push(x);
        }  
    }  
    return s.size();  
}  
int main() {  
    int n;  
    cin >>n;
    vector<int>a(N);  
    for (int i=0;i<N;i++) {  
        cin >> a[i];  
    }  
    int ans = solve(a);  
    cout <<ans<< endl;  
    return 0;  
}
/*
if输入:
5
0 0 0 1 2
should输出:
4
this输出:
3 
*/
2024/4/28 20:14
加载中...