제출 #1181388

#제출 시각아이디문제언어결과실행 시간메모리
1181388CaiWinDaoMensza (COI22_mensza)C++20
100 / 100
1338 ms33376 KiB
// grok #include <bits/stdc++.h> using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int L; cin >> L; // Độ dài tối đa của mảng a và b int Q; cin >> Q; // Số truy vấn for (int q = 0; q < Q; q++) { string type; cin >> type; if (type == "alojzije") { int A; cin >> A; vector<int> a; // Mã hóa A thành các bit for (int i = 0; i <= 18; i++) { if (A & (1 << i)) { // Kiểm tra bit thứ i a.push_back(i); } } // Xuất mảng a cout << a.size(); for (int num : a) { cout << " " << num; } cout << endl; } else if (type == "benjamin") { int B; cin >> B; vector<int> b; // Mã hóa B thành các bit, cộng 100 để phân biệt for (int i = 0; i <= 18; i++) { if (B & (1 << i)) { b.push_back(100 + i); } } // Xuất mảng b cout << b.size(); for (int num : b) { cout << " " << num; } cout << endl; } else if (type == "cecilija") { int lc; cin >> lc; // Độ dài mảng c vector<int> c(lc); for (int i = 0; i < lc; i++) { cin >> c[i]; } int A = 0, B = 0; // Giải mã từ mảng c for (int num : c) { if (0 <= num && num <= 18) { A |= (1 << num); // Set bit tương ứng của A } else if (100 <= num && num <= 118) { int i = num - 100; B |= (1 << i); // Set bit tương ứng của B } } // So sánh và xuất kết quả if (A > B) { cout << "A" << endl; } else { cout << "B" << endl; } } } return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...