Submission #1085391

# Submission time Handle Problem Language Result Execution time Memory
1085391 2024-09-08T07:45:24 Z _rain_ Arcade (NOI20_arcade) C++14
0 / 100
1 ms 348 KB
#include<bits/stdc++.h>
using namespace std;

#define fixbug true
#define ll long long

const int maxm = 5e5;
#define ii pair<int,int>
#define fi first
#define se second
ii a[maxm+2];
int n , m;

namespace subtask1{
    bool check(){
        return n <= 100 && m <= 100;
    }
    set<vector<ii>> used;
    int best = (int)1e9+7;
    void recur(int idx , vector<ii> arms){
        if (idx==m+1){
            best = min(best , (int)arms.size());
            return;
        }
        if (arms.size() >= best) return;
        for (auto& x : arms){

            if (abs(x.second - a[idx].second) <= a[idx].first - x.first){
                ii old = x;
                x = a[idx];
                if (used.find(arms)!=used.end()) {
                    x = old;
                    continue;
                }
                used.insert(arms);
                recur(idx+1,arms);
                x = old;
            }
            if (arms.size() >= best) return;
        }
        arms.push_back(a[idx]);
        if (used.find(arms)!=used.end()) return;
        used.insert(arms);
        recur(idx+1,arms);
    }
    void main_code(){
        vector<ii> arms;
        sort(a+1,a+m+1);
        recur(0,arms);
        cout << best;
    }
}

int main(){
    ios::sync_with_stdio(false);
    cin.tie(0); cout.tie(0);
    #define name "main"
    if (fopen(name".inp","r")){
        freopen(name".inp","r",stdin);
        freopen(name".out","w",stdout);
    }

    cin >> n >> m;
    for (int i = 1; i <= m; ++i) cin >> a[i].fi;
    for (int i = 1; i <= m; ++i) cin >> a[i].se;
    if (subtask1::check()) {
        subtask1::main_code();
        exit(0);
    }
}

Compilation message

Arcade.cpp: In function 'void subtask1::recur(int, std::vector<std::pair<int, int> >)':
Arcade.cpp:25:25: warning: comparison of integer expressions of different signedness: 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   25 |         if (arms.size() >= best) return;
      |             ~~~~~~~~~~~~^~~~~~~
Arcade.cpp:39:29: warning: comparison of integer expressions of different signedness: 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   39 |             if (arms.size() >= best) return;
      |                 ~~~~~~~~~~~~^~~~~~~
Arcade.cpp: In function 'int main()':
Arcade.cpp:59:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   59 |         freopen(name".inp","r",stdin);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
Arcade.cpp:60:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   60 |         freopen(name".out","w",stdout);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 348 KB Output isn't correct
2 Halted 0 ms 0 KB -