제출 #95658

#제출 시각아이디문제언어결과실행 시간메모리
95658jeffGap (APIO16_gap)C++14
0 / 100
116 ms2168 KiB
#include <bits/stdc++.h>
#include "gap.h"
using namespace std;

inline unsigned long long mde(unsigned long long a, unsigned long long b, unsigned long long c) {
    unsigned long long s = 0, t = 0, y = 0, z = 0, i;
    stack<unsigned long long> st;
    while (b) st.push(b % 10), b /= 10;
    while (!st.empty()) {
        z *= 10;
        y *= 10;
        z += a * st.top();
        st.pop();
        y += z / 1000000000000000000;
        z %= 1000000000000000000;
    }
    t += y / c;
    y %= c;
    for (i = 0; i < 18; ++i) {
        y *= 10;
        z *= 10;
        t *= 10;
        y += z / 1000000000000000000;
        z %= 1000000000000000000;
        t += y / c;
        y %= c;
    }
    return t;
}

long long findGap(int T, int N) {
    long long l, r, y, z, ls = -1, rs = 0, a, b = 0, i;
    MinMax(0, 1000000000000000000, &y, &z);
    assert(mde(z - y, N - 1, N - 1) == z - y); 
    for (i = 0; i < N - 1; ++i) {
        a = y + mde(z - y, i, N - 1);
        b = y + mde(z - y, i + 1, N - 1) - 1;
        if (a >= b) continue;
        MinMax(a, b, &l, &r);
        if (l < 0 && r < 0) continue;
        if (ls > -1) rs = max(rs, l - ls);
        ls = r;
    }
	return max(rs, z - ls);
}

컴파일 시 표준 에러 (stderr) 메시지

gap.cpp: In function 'long long unsigned int mde(long long unsigned int, long long unsigned int, long long unsigned int)':
gap.cpp:6:24: warning: unused variable 's' [-Wunused-variable]
     unsigned long long s = 0, t = 0, y = 0, z = 0, i;
                        ^
In file included from /usr/include/c++/7/cassert:44:0,
                 from /usr/include/x86_64-linux-gnu/c++/7/bits/stdc++.h:33,
                 from gap.cpp:1:
gap.cpp: In function 'long long int findGap(int, int)':
gap.cpp:34:37: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     assert(mde(z - y, N - 1, N - 1) == z - y); 
            ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...