[백준/BOJ] 24023. 아기 홍윤 [Gold 5]

jychan99·2022년 2월 28일
0
post-thumbnail
  1. 아기 홍윤

문제출처 : https://www.acmicpc.net/problem/24023

code

#include <iostream>
#define MAX 200000
using namespace std;

int arr[MAX];
int main()
{
    int N, K, i, s = 0, e = 0, answer = 0;
    cin >> N >> K;

    for (i = 0; i < N; i++)
        cin >> arr[i];

    s = 0;
    for (i = 0; i < N; i++)
    {
        if (s < 0)
            s = i;
        if ((K | arr[i]) > K)
        {
            answer = 0;
            s = -1;
            e = -1;
        }
        else
        {
            answer = arr[i] | answer;
            if (answer == K)
            {
                e = i;
                break;
            }
        }
    }
    if (answer == K)
        cout << ++s << " " << ++e;
    else
        cout << -1;

    return 0;
}

비트연산자를 사용하는 문제였다. 비트연산이라고 어려운문제가 아니라 그냥 반복문돌면서 풀어버렸다. 별로 어렵진 않은 문제다.

profile
내가 지금 두려워 하고 있는 일이 바로 내가 지금 해야 할 일이다. 🐥

0개의 댓글