diff options
Diffstat (limited to 'TokitsukazeAndAllZeroSequence')
| -rw-r--r-- | TokitsukazeAndAllZeroSequence/TokitsukazeAndAllZeroSequence.cpp | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/TokitsukazeAndAllZeroSequence/TokitsukazeAndAllZeroSequence.cpp b/TokitsukazeAndAllZeroSequence/TokitsukazeAndAllZeroSequence.cpp new file mode 100644 index 0000000..f83e44d --- /dev/null +++ b/TokitsukazeAndAllZeroSequence/TokitsukazeAndAllZeroSequence.cpp @@ -0,0 +1,38 @@ +#include<bits/stdc++.h> +using namespace std; +int main() { + int tt; + cin >> tt; + while(tt--) { + int ansZ = 0; + bool duple = false; + bool zero = false; + int n; cin >> n; + vector<int> v(n); + map<int, int> mp; + for(auto &x : v) { + cin >> x; + if(x == 0) { + zero = true; + } + mp[x]++; + } + for(auto &p : mp) { + if(p.first == 0) { + ansZ+=p.second; + } + if(p.second > 1 && p.first != 0) { + duple = true; + } + } + if(zero) { + cout << n - ansZ << endl; + } + else if(duple){ + cout << n << endl; + } + else { + cout << n + 1 << endl; + } + } +} |
