제출 #1184566

#제출 시각아이디문제언어결과실행 시간메모리
1184566mmusomMatching (CEOI11_mat)C++20
0 / 100
2095 ms12612 KiB
#include<bits/stdc++.h>

#define int long long

using namespace std;

//#include <ext/pb_ds/assoc_container.hpp>
//#include <ext/pb_ds/tree_policy.hpp>
//using namespace __gnu_pbds;

//#define ordered_multiset tree<long long, null_type,less_equal<long long>, rb_tree_tag,tree_order_statistics_node_update>
//#define ordered_set tree<long long, null_type,less<long long>, rb_tree_tag,tree_order_statistics_node_update>

//st.order_of_key
//st.find_by_order

main(){
    #ifndef ONLINE_JUDGE
//        freopen("input.txt", "r", stdin);
//        freopen("output.txt", "w", stdout);
    #endif
    ios_base::sync_with_stdio(NULL);
    cin.tie(NULL);
    cout.tie(NULL);
    int n,m;
    cin>>n>>m;
    vector<int> a(n+1);
    for(int i=1;i<=n;++i){
        cin>>a[i];
    }
    vector<int> b(m+1),c(n+1),ans;
    for(int i=1;i<=m;++i){
        cin>>b[i];
        if(i>n){
            bool ok=0;
            for(int j=1;j<=n;++j){
                if(ok){
                    c[j-1]=c[j];
                }
                if(c[j]==i-n){
                    ok=1;
                }
            }
        }
        int h=i;
        for(int j=1;j<min(i,n);++j){
            if(b[c[j]]>b[i]){
                h=j;
                break;
            }
        }
        for(int j=min(i,n);j>h;--j){
            c[j]=c[j-1];
        }
        c[h]=i;
        if(i>=n){
            ans.push_back(i-n+1);
            for(int j=1;j<=n;++j){
                if(c[j]-i+n!=a[j]){
                    ans.pop_back();
                    break;
                }
            }
        }
    }
    cout<<ans.size()<<"\n";
    for(int i:ans){
        cout<<i<<" ";
    }
}

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

mat.cpp:17:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   17 | main(){
      | ^~~~
#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...
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...