Submission #497963

# Submission time Handle Problem Language Result Execution time Memory
497963 2021-12-24T06:24:04 Z dannyboy20031204 Vepar (COCI21_vepar) C++17
70 / 70
293 ms 18504 KB
#include <bits/stdc++.h>
#define ll long long
#define int long long
#define fi first
#define se second
#define mp make_pair 
using namespace std;
void db() {cout << endl;}
template <typename T, typename ...U> void db(T a, U ...b) {
    //return;
    cout << a << ' ', db(b...);
}
#ifdef Cloud
#define file freopen("input.txt", "r", stdin), freopen("output.txt", "w", stdout)
#else
#define file ios::sync_with_stdio(false); cin.tie(0)
#endif
const int inf = 1e9 + 1, N = 1e7 + 1, mod = 1e9 + 7;
vector<int> p;
int cnt(int l, int r, int x){
    return r / x - (l - 1) / x;
}
void solve(){
    int a, b, c, d;
    cin >> a >> b >> c >> d;
    for (int i : p){
        ll x = i, pre1 = 0, pre2 = 0, pw = 1, sum = 0;
        while (x * i <= N) x *= i, pw++;
        for (ll j = x; j > 1; j /= i){
            sum += pw * (cnt(c, d, j) - pre1);
            pre1 = cnt(c, d, j);
            sum -= pw * (cnt(a, b, j) - pre2);
            pre2 = cnt(a, b, j);
            pw--;
        }
        if (sum < 0) return void(cout << "NE\n");
    }
    cout << "DA\n";
}
signed main(){
    file;
    bool out[N]{};
    for (int i = 2; i < N; i++){
        if (!out[i]) p.push_back(i);
        for (int j : p){
            if (j * i >= N) break;
            out[j * i] = 1;
        }
    }
    int t;
    cin >> t;
    while (t--) solve();
    //db(p.size());
}
# Verdict Execution time Memory Grader output
1 Correct 242 ms 18316 KB Output is correct
2 Correct 271 ms 18368 KB Output is correct
3 Correct 163 ms 18440 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 235 ms 18396 KB Output is correct
2 Correct 197 ms 18416 KB Output is correct
3 Correct 205 ms 18404 KB Output is correct
4 Correct 208 ms 18384 KB Output is correct
5 Correct 163 ms 18416 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 233 ms 18320 KB Output is correct
2 Correct 189 ms 18368 KB Output is correct
3 Correct 203 ms 18504 KB Output is correct
4 Correct 208 ms 18356 KB Output is correct
5 Correct 218 ms 18352 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 288 ms 18392 KB Output is correct
2 Correct 193 ms 18352 KB Output is correct
3 Correct 153 ms 18356 KB Output is correct
4 Correct 225 ms 18356 KB Output is correct
5 Correct 193 ms 18372 KB Output is correct
6 Correct 195 ms 18352 KB Output is correct
7 Correct 293 ms 18336 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 251 ms 18416 KB Output is correct
2 Correct 152 ms 18344 KB Output is correct
3 Correct 212 ms 18320 KB Output is correct
4 Correct 211 ms 18336 KB Output is correct
5 Correct 193 ms 18360 KB Output is correct
6 Correct 215 ms 18316 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 223 ms 18356 KB Output is correct
2 Correct 131 ms 18364 KB Output is correct
3 Correct 225 ms 18404 KB Output is correct
4 Correct 179 ms 18412 KB Output is correct
5 Correct 192 ms 18360 KB Output is correct
6 Correct 211 ms 18420 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 232 ms 18356 KB Output is correct
2 Correct 193 ms 18400 KB Output is correct
3 Correct 183 ms 18348 KB Output is correct
4 Correct 212 ms 18360 KB Output is correct
5 Correct 174 ms 18352 KB Output is correct
6 Correct 214 ms 18400 KB Output is correct
7 Correct 287 ms 18324 KB Output is correct