넘치게 채우기

[BOJ] 12833 : XORXORXOR 본문

PS/BOJ

[BOJ] 12833 : XORXORXOR

riveroverflow 2023. 6. 10. 19:09
728x90
반응형

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

 

12833번: XORXORXOR

세 수 A, B, C를 입력 받은 다음, ( ( ( ( A XOR B ) XOR B ) XOR B ) … ) XOR B 형태로 연산을 C회 했을 때의 결과값을 출력하는 프로그램을 작성하시오.

www.acmicpc.net

문제 유형 : 비트마스크

solved.ac 난이도 : Bronze 1

 

문제

세 수 A, B, C를 입력 받은 다음, ( ( ( ( A XOR B ) XOR B ) XOR B ) … ) XOR B 형태로 연산을 C회 했을 때의 결과값을 출력하는 프로그램을 작성하시오.

 

시간 제한 : 0.2초, 메모리 : 512MB 

 

입력

첫째 줄에 A B C가 주어진다. (0 < A, B, C < 10^9)

 

출력

첫째 줄에 계산된 결과를 출력한다.

 

풀이

(A XOR B) XOR B는 A가 나온다.

C가 짝수이면 그대로 A를 출력하면 되고,

C가 홀수이면 (A ^ B)를 출력하면 된다.

 

코드(C++)

#include <iostream>
using namespace std;

int main() {
    int a, b, c;
    cin >> a >> b >> c;

    if (c % 2 == 0) {
        cout << a << endl;
    } else {
        cout << (a ^ b) << endl;
    }

    return 0;
}
 
 
728x90
반응형

'PS > BOJ' 카테고리의 다른 글

[BOJ] 1328 : 고층 빌딩  (0) 2023.09.21
[BOJ] 16234 : 인구 이동  (0) 2023.09.19
[BOJ] 15686: 치킨 배달  (0) 2023.09.18
[BOJ] 2638 : 치즈  (0) 2023.04.24
[BOJ] 1068 : 트리  (0) 2023.04.19