Submission #481040

#TimeUsernameProblemLanguageResultExecution timeMemory
481040DJeniUpPolitical Development (BOI17_politicaldevelopment)C++17
77 / 100
3067 ms7648 KiB
#pragma GCC Optimize("O3")
#include <bits/stdc++.h>

using namespace std;

typedef long long ll;
typedef unsigned long long ull;
typedef pair<ll,ll>pairll;
typedef pair<ll,pairll>pairlll;
typedef pair<pairll,pairll>pairllll;
typedef long double ld;
typedef pair<ll,string>pairls;

#define INF 1000000000000007
#define MOD 1000000007
#define pb push_back
#define fr first
#define sc second
#define endl '\n'

ll n,k,f[50007],res;

vector<ll>v[50007];

void S(ll x,ll y){
    if(x==n+1){
        res=max(res,y);
        return ;
    }
    if(f[x]==y){
        for(int i=0;i<v[x].size();i++){
            f[v[x][i]]++;
        }
        S(x+1,y+1);
        for(int i=0;i<v[x].size();i++){
            f[v[x][i]]--;
        }
    }
    S(x+1,y);
    return ;
}

int main() {
    
    cin>>n>>k;
    res=0;
    for(int i=1;i<=n;i++){
        ll x;
        cin>>x;
        for(int j=1;j<=x;j++){
            ll y;
            cin>>y;
            y++;
            if(y>i)v[i].pb(y);
        }
    }
    S(1,0);
    cout<<res<<endl;
}

Compilation message (stderr)

politicaldevelopment.cpp:1: warning: ignoring '#pragma GCC Optimize' [-Wunknown-pragmas]
    1 | #pragma GCC Optimize("O3")
      | 
politicaldevelopment.cpp: In function 'void S(ll, ll)':
politicaldevelopment.cpp:31:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   31 |         for(int i=0;i<v[x].size();i++){
      |                     ~^~~~~~~~~~~~
politicaldevelopment.cpp:35:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   35 |         for(int i=0;i<v[x].size();i++){
      |                     ~^~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...