ABOUT ME

초보 iOS 개발자 세상이 채워 가는 월드 와이드 웹 항해 일지 / https://github.com/sesang06 / sesang06@naver.com

Today
Yesterday
Total
  • 백준 1300번 C++ 풀이
    백준 2018. 10. 7. 18:29
    반응형
    #include <iostream>
    #include <queue>
    #define MAX 35002
    using namespace std;
    queue<int> q;
    //queue<int> result;

    long long n;
    long long k;
    long long answer;
    void find(long long start, long long end) {
    if (start >= end) return;
    auto middle = (start + end) /2;
    auto cnt = 0;
    for (auto i=1; i<=n; i++){
    cnt += min( n,middle/i);
    }
    if (cnt >= k){
    answer = middle;
    find(start, middle);
    }else {
    find(middle+1, end);
    }
    }
    int main() {
    cin.tie(NULL);
    ios::sync_with_stdio(false);
    cin >> n >> k;
    find(0, min( n*n+1, 1000000000LL) +1);
    cout << answer;
    return 0;

    }


    반응형

    '백준' 카테고리의 다른 글

    백준 11725번 C++ 풀이  (0) 2018.10.09
    백준 1991번 C++ 풀이  (0) 2018.10.07
    백준 10815번 C++ 풀이  (0) 2018.10.07
    백준 1890 C++ 풀이  (0) 2018.10.04
    백준 10216번 풀이  (0) 2018.10.03
Designed by Tistory.