※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※

 

이번에 볼 문제는 백준 12250번 문제인 New Lottery Game (Small)이다.
문제는 아래 링크를 확인하자.

https://www.acmicpc.net/problem/12250 

 

12250번: New Lottery Game (Small)

In the first test case, these are the 10 possible pairs generated by the old and new machine respectively that will make her a winner: <0,0>, <0,1>, <0,2>, <0,3>, <1,0>, <1,1>, <1,2>, <1,3>, <2,0> and <2,1>. Notice that <0,1> is not the same as <1,0>. Also

www.acmicpc.net

각 데이터의 입력 크기가 충분히 작으므로, 가능한 모든 A 이하의 음이 아닌 정수 a와 B 이하의 음이 아닌 정수 b의 쌍 (a,b)에 대하여 a와 b를 AND한 값이 K보다 작은 쌍의 수를 세어 문제를 해결하자.

 

매 테스트케이스마다 확인해봐야 할 (a,b) 순서쌍은 많아야 100만개뿐이므로 이와 같은 구현으로 시간 내에 문제를 충분히 해결할 수 있다.

 

아래는 제출한 소스코드이다.

#include <iostream>
using namespace std;

int T;

int main() {
	ios::sync_with_stdio(0);
	cin.tie(0);

	cin >> T;
	for (int t = 1; t <= T; t++) {
		int A, B, K; cin >> A >> B >> K;
		int ans = 0;
		for (int a = 0; a < A; a++) {
			for (int b = 0; b < B; b++) {
				if ((a & b) < K) ans++;
			}
		}

		cout << "Case #" << t << ": " << ans << '\n';
	}
}
728x90

'BOJ' 카테고리의 다른 글

[BOJ 20374 // C++] Big Money  (0) 2023.01.06
[BOJ 24333 // C++] СРЕЩА НА ПРИЯТЕЛИ  (0) 2023.01.06
[BOJ 8794 // C++] Poniedziałki  (0) 2023.01.06
[BOJ 10693 // C++] Abdelrahman  (0) 2023.01.06
[BOJ 24603 // C++] Scaling Recipe  (0) 2023.01.06

+ Recent posts