Submission #1046291

# Submission time Handle Problem Language Result Execution time Memory
1046291 2024-08-06T12:33:33 Z YassineBenYounes Gift Exchange (JOI24_ho_t4) C++17
9 / 100
102 ms 89676 KB
#include<bits/stdc++.h>
#include<chrono>
#include<random>
typedef long long ll;
typedef unsigned long long ull;
typedef long double ld;
typedef double db;
ll gcd(ll a , ll b) {return b ? gcd(b , a % b) : a ;} // greatest common divisor (PGCD)
ll lcm(ll a , ll b) {return (a * b) / gcd(a , b);} // least common multiple (PPCM)
int dx[8] = {1, 0, 0, -1, 1, 1, -1, -1};
int dy[8] = {0, 1, -1, 0, 1, -1, -1, 1};
#define endl "\n"
#define ss second
#define ff first
#define all(x) (x).begin() , (x).end()
#define pb push_back
#define vi vector<int>
#define vii vector<pair<int,int>>
#define vl vector<ll>
#define vll vector<pair<ll,ll>>
#define pii pair<int,int>
#define pll pair<ll,ll>
#define pdd  pair<double,double>
#define vdd  vector<pdd>
#define speed ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
#define pbds tree<pii, null_type, less<pii>,rb_tree_tag, tree_order_statistics_node_update>
using namespace __gnu_pbds;
using namespace std;
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());

////////////////////Only Clear Code//////////////////////////

void usaco_problem(){
    freopen("milkvisits.in", "r", stdin);
    freopen("milkvisits.out", "w", stdout);
}

void init(){
    #ifndef ONLINE_JUDGE

freopen("input.txt", "r", stdin);
freopen("output.txt", "w", stdout);
#endif // ONLINE_JUDGE
}
const int mx = 5e5+5;
const int LOG = 22;
const int inf = 1e9;
const ll mod = 1e9+7;
const int sq = 300;

int a[mx], b[mx];
int dp[20][(1 << 19)+2];
bool solve(int ind, int mask, int l, int r){
    if(ind == r+1)return 1;
    if(dp[ind][mask] != -1)return dp[ind][mask];
    bool ans = 0;
    for(int i = l; i <= r;i++){
        if(ind == i)continue;
        if((1 << i) & mask)continue;
        if(a[ind] > b[i])ans |= solve(ind+1, mask | (1 << i), l, r);
    }
    return dp[ind][mask] = ans;
}

int32_t main(){
    speed;
    int n;cin >> n;
    for(int i = 0; i < n;i++){
        cin >> a[i];
    }
    for(int j = 0;j < n;j++) {
        cin >> b[j];
    }
    int q;cin >> q;
    while(q--) {
        int l, r;cin >> l >> r;l--;r--;
        memset(dp, -1, sizeof dp);
        bool ok = solve(l, 0, l, r);
        cout << (ok ? "Yes": "No") << endl;
    }
}

/*
    NEVER GIVE UP!
    DOING SMTHNG IS BETTER THAN DOING NTHNG!!!
    Your Guide when stuck:
    - Continue keyword only after reading the whole input
    - Don't use memset with testcases
    - Check for corner cases(n=1, n=0)
    - Check where you declare n(Be careful of declaring it globally and in main)
*/

Compilation message

Main.cpp: In function 'bool solve(int, int, int, int)':
Main.cpp:64:26: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
   64 |     return dp[ind][mask] = ans;
      |            ~~~~~~~~~~~~~~^~~~~
Main.cpp: In function 'void usaco_problem()':
Main.cpp:36:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   36 |     freopen("milkvisits.in", "r", stdin);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Main.cpp:37:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   37 |     freopen("milkvisits.out", "w", stdout);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Main.cpp: In function 'void init()':
Main.cpp:43:8: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   43 | freopen("input.txt", "r", stdin);
      | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
Main.cpp:44:8: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   44 | freopen("output.txt", "w", stdout);
      | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 8 ms 43608 KB Output is correct
2 Correct 4 ms 43608 KB Output is correct
3 Correct 7 ms 43612 KB Output is correct
4 Correct 15 ms 43736 KB Output is correct
5 Correct 19 ms 43612 KB Output is correct
6 Correct 19 ms 43736 KB Output is correct
7 Correct 18 ms 43612 KB Output is correct
8 Correct 18 ms 43612 KB Output is correct
9 Correct 19 ms 43612 KB Output is correct
10 Correct 20 ms 43732 KB Output is correct
11 Correct 19 ms 43612 KB Output is correct
12 Correct 18 ms 43612 KB Output is correct
13 Correct 22 ms 43612 KB Output is correct
14 Correct 20 ms 43612 KB Output is correct
15 Correct 21 ms 43612 KB Output is correct
16 Correct 19 ms 43744 KB Output is correct
17 Correct 19 ms 43612 KB Output is correct
18 Correct 5 ms 43612 KB Output is correct
19 Correct 4 ms 43740 KB Output is correct
20 Correct 4 ms 43744 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 8 ms 43608 KB Output is correct
2 Correct 4 ms 43608 KB Output is correct
3 Correct 7 ms 43612 KB Output is correct
4 Correct 15 ms 43736 KB Output is correct
5 Correct 19 ms 43612 KB Output is correct
6 Correct 19 ms 43736 KB Output is correct
7 Correct 18 ms 43612 KB Output is correct
8 Correct 18 ms 43612 KB Output is correct
9 Correct 19 ms 43612 KB Output is correct
10 Correct 20 ms 43732 KB Output is correct
11 Correct 19 ms 43612 KB Output is correct
12 Correct 18 ms 43612 KB Output is correct
13 Correct 22 ms 43612 KB Output is correct
14 Correct 20 ms 43612 KB Output is correct
15 Correct 21 ms 43612 KB Output is correct
16 Correct 19 ms 43744 KB Output is correct
17 Correct 19 ms 43612 KB Output is correct
18 Correct 5 ms 43612 KB Output is correct
19 Correct 4 ms 43740 KB Output is correct
20 Correct 4 ms 43744 KB Output is correct
21 Correct 19 ms 43608 KB Output is correct
22 Correct 21 ms 43612 KB Output is correct
23 Correct 20 ms 43612 KB Output is correct
24 Correct 19 ms 43612 KB Output is correct
25 Correct 21 ms 43740 KB Output is correct
26 Correct 20 ms 43612 KB Output is correct
27 Correct 18 ms 43736 KB Output is correct
28 Correct 29 ms 43612 KB Output is correct
29 Correct 102 ms 43612 KB Output is correct
30 Correct 52 ms 43612 KB Output is correct
31 Correct 20 ms 43608 KB Output is correct
32 Correct 25 ms 43740 KB Output is correct
33 Correct 20 ms 43608 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 4 ms 43612 KB Output is correct
2 Correct 5 ms 43612 KB Output is correct
3 Correct 5 ms 43612 KB Output is correct
4 Runtime error 37 ms 89676 KB Execution killed with signal 11
5 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 8 ms 43608 KB Output is correct
2 Correct 4 ms 43608 KB Output is correct
3 Correct 7 ms 43612 KB Output is correct
4 Correct 15 ms 43736 KB Output is correct
5 Correct 19 ms 43612 KB Output is correct
6 Correct 19 ms 43736 KB Output is correct
7 Correct 18 ms 43612 KB Output is correct
8 Correct 18 ms 43612 KB Output is correct
9 Correct 19 ms 43612 KB Output is correct
10 Correct 20 ms 43732 KB Output is correct
11 Correct 19 ms 43612 KB Output is correct
12 Correct 18 ms 43612 KB Output is correct
13 Correct 22 ms 43612 KB Output is correct
14 Correct 20 ms 43612 KB Output is correct
15 Correct 21 ms 43612 KB Output is correct
16 Correct 19 ms 43744 KB Output is correct
17 Correct 19 ms 43612 KB Output is correct
18 Correct 5 ms 43612 KB Output is correct
19 Correct 4 ms 43740 KB Output is correct
20 Correct 4 ms 43744 KB Output is correct
21 Correct 19 ms 43608 KB Output is correct
22 Correct 21 ms 43612 KB Output is correct
23 Correct 20 ms 43612 KB Output is correct
24 Correct 19 ms 43612 KB Output is correct
25 Correct 21 ms 43740 KB Output is correct
26 Correct 20 ms 43612 KB Output is correct
27 Correct 18 ms 43736 KB Output is correct
28 Correct 29 ms 43612 KB Output is correct
29 Correct 102 ms 43612 KB Output is correct
30 Correct 52 ms 43612 KB Output is correct
31 Correct 20 ms 43608 KB Output is correct
32 Correct 25 ms 43740 KB Output is correct
33 Correct 20 ms 43608 KB Output is correct
34 Correct 4 ms 43612 KB Output is correct
35 Correct 5 ms 43612 KB Output is correct
36 Correct 5 ms 43612 KB Output is correct
37 Runtime error 37 ms 89676 KB Execution killed with signal 11
38 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 7 ms 43612 KB Output is correct
2 Correct 4 ms 43612 KB Output is correct
3 Correct 4 ms 43612 KB Output is correct
4 Runtime error 35 ms 89284 KB Execution killed with signal 11
5 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 7 ms 43612 KB Output is correct
2 Correct 4 ms 43612 KB Output is correct
3 Correct 4 ms 43612 KB Output is correct
4 Runtime error 35 ms 89284 KB Execution killed with signal 11
5 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 8 ms 43608 KB Output is correct
2 Correct 4 ms 43608 KB Output is correct
3 Correct 7 ms 43612 KB Output is correct
4 Correct 15 ms 43736 KB Output is correct
5 Correct 19 ms 43612 KB Output is correct
6 Correct 19 ms 43736 KB Output is correct
7 Correct 18 ms 43612 KB Output is correct
8 Correct 18 ms 43612 KB Output is correct
9 Correct 19 ms 43612 KB Output is correct
10 Correct 20 ms 43732 KB Output is correct
11 Correct 19 ms 43612 KB Output is correct
12 Correct 18 ms 43612 KB Output is correct
13 Correct 22 ms 43612 KB Output is correct
14 Correct 20 ms 43612 KB Output is correct
15 Correct 21 ms 43612 KB Output is correct
16 Correct 19 ms 43744 KB Output is correct
17 Correct 19 ms 43612 KB Output is correct
18 Correct 5 ms 43612 KB Output is correct
19 Correct 4 ms 43740 KB Output is correct
20 Correct 4 ms 43744 KB Output is correct
21 Correct 19 ms 43608 KB Output is correct
22 Correct 21 ms 43612 KB Output is correct
23 Correct 20 ms 43612 KB Output is correct
24 Correct 19 ms 43612 KB Output is correct
25 Correct 21 ms 43740 KB Output is correct
26 Correct 20 ms 43612 KB Output is correct
27 Correct 18 ms 43736 KB Output is correct
28 Correct 29 ms 43612 KB Output is correct
29 Correct 102 ms 43612 KB Output is correct
30 Correct 52 ms 43612 KB Output is correct
31 Correct 20 ms 43608 KB Output is correct
32 Correct 25 ms 43740 KB Output is correct
33 Correct 20 ms 43608 KB Output is correct
34 Correct 4 ms 43612 KB Output is correct
35 Correct 5 ms 43612 KB Output is correct
36 Correct 5 ms 43612 KB Output is correct
37 Runtime error 37 ms 89676 KB Execution killed with signal 11
38 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 8 ms 43608 KB Output is correct
2 Correct 4 ms 43608 KB Output is correct
3 Correct 7 ms 43612 KB Output is correct
4 Correct 15 ms 43736 KB Output is correct
5 Correct 19 ms 43612 KB Output is correct
6 Correct 19 ms 43736 KB Output is correct
7 Correct 18 ms 43612 KB Output is correct
8 Correct 18 ms 43612 KB Output is correct
9 Correct 19 ms 43612 KB Output is correct
10 Correct 20 ms 43732 KB Output is correct
11 Correct 19 ms 43612 KB Output is correct
12 Correct 18 ms 43612 KB Output is correct
13 Correct 22 ms 43612 KB Output is correct
14 Correct 20 ms 43612 KB Output is correct
15 Correct 21 ms 43612 KB Output is correct
16 Correct 19 ms 43744 KB Output is correct
17 Correct 19 ms 43612 KB Output is correct
18 Correct 5 ms 43612 KB Output is correct
19 Correct 4 ms 43740 KB Output is correct
20 Correct 4 ms 43744 KB Output is correct
21 Correct 19 ms 43608 KB Output is correct
22 Correct 21 ms 43612 KB Output is correct
23 Correct 20 ms 43612 KB Output is correct
24 Correct 19 ms 43612 KB Output is correct
25 Correct 21 ms 43740 KB Output is correct
26 Correct 20 ms 43612 KB Output is correct
27 Correct 18 ms 43736 KB Output is correct
28 Correct 29 ms 43612 KB Output is correct
29 Correct 102 ms 43612 KB Output is correct
30 Correct 52 ms 43612 KB Output is correct
31 Correct 20 ms 43608 KB Output is correct
32 Correct 25 ms 43740 KB Output is correct
33 Correct 20 ms 43608 KB Output is correct
34 Correct 4 ms 43612 KB Output is correct
35 Correct 5 ms 43612 KB Output is correct
36 Correct 5 ms 43612 KB Output is correct
37 Runtime error 37 ms 89676 KB Execution killed with signal 11
38 Halted 0 ms 0 KB -