#pragma GCC optimize("Ofast,unroll-loops")
#include <bits/stdc++.h>
#pragma GCC target("avx2")
// #define int long long
using namespace std;
signed main(){
int l, q;
cin >> l >> q;
for(int i = 0; i < q; i++) {
string s;
cin >> s;
if(s[0] == 'a') {
int num;
cin >> num;
vector<int> ans;
for(int j = 1; j <= 20; j++) {
if(num % 2) {
for(int k = 0; k < j; k++) ans.push_back(j);
}
num /= 2;
}
cout<< ans.size()<<' ';
for(int j : ans) cout<<j<<' ';
cout<<'\n';
}else if(s[0] == 'b'){
int num;
cin >> num;
vector<int> ans;
for(int j = 21; j <= 40; j++) {
if(num % 2) {
for(int k = 0; k < j; k++) ans.push_back(j);
}
num /= 2;
}
cout<< ans.size()<<' ';
for(int j : ans) cout<<j<<' ';
cout<<'\n';
}else if(s[0] == 'c') {
int n;
cin >>n;
int a = 0, b = 0;
set<int> se;
for(int j = 0; j < n; j++) {
int v;
cin >> v;
se.insert(v);
}
for(int j = 1; j <= 20; j++) {
if(se.contains(j)) {
a += pow(2, j - 1);
}
}
for(int j = 21; j <= 41; j++) {
if(se.contains(j)) {
b += pow(2, j - 21);
}
}
if(a > b) {
cout<<"A\n";
}else {
cout<<"B\n";
}
}
}
return 0;
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |