기술 블로그

1057번 토너먼트 본문

알고리즘 문제/BOJ

1057번 토너먼트

parkit 2018. 12. 7. 12:54
728x90
반응형

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


다음 라운드의 자신의 번호는 (현재 자신의 번호 + 1) / 2이다.


예)


1과 2를 보면

(1 + 1) / 2 = 1

(2 + 1) / 2 = 1

같으면, 경기(대결)를 해당 라운드에서 하게 된다.




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <iostream>
#include <queue>
#include <stack>
#include <cstdio>
#include <vector>
#include <cstring>
#include <string>
#include <math.h>
#include <algorithm>
#include <map>
 
using namespace std;
 
int N = 0, kim = 0, lim = 0;
 
int main(void)
{
    scanf("%d %d %d"&N, &kim, &lim);
 
    int pos = 2, result = 1;
 
    while (1)
    {
        int Nextkim = (kim + 1/ 2;
        int Nextlim = (lim + 1/ 2;
 
        if (Nextkim == Nextlim) break;
 
        kim = (kim + 1/ 2;
        lim = (lim + 1/ 2;
 
        ++result;
    }
 
    printf("%d\n", result);
 
    return 0;
}
cs








728x90
반응형

'알고리즘 문제 > BOJ' 카테고리의 다른 글

2503번 숫자 야구  (0) 2018.12.09
1021번 회전하는 큐  (0) 2018.12.09
1966번 프린터 큐  (0) 2018.12.05
2668번 숫자고르기  (0) 2018.12.04
4641번 Doubles  (0) 2018.12.03