답안 #995304

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
995304 2024-06-08T19:29:44 Z idk__ 9월 (APIO24_september) C++17
0 / 100
9 ms 19800 KB
#include "september.h"
#include <bits/stdc++.h>
using namespace std;
 
 
 
int vis[200055];
vector<int>adj[200055];
vector<int>idx[200055];
bool flag = false;
int pos[20055];
int dfs(int i ){    
    int curr = pos[i];
    vis[i]=1;
    for(auto j : adj[i]){
        if(!vis[j]){
            curr = max(curr, dfs(j));
        }
    }
    
    return curr;
}
int solve(int N, int M, std::vector<int> F, std::vector<std::vector<int>> S) {
    //return 5;
    memset(vis, 0,  N);
    memset(idx, 0, N);
    memset(pos, 0, N);
    for(int i = 0;i < N; i++)if(adj[i].size())adj[i].clear();
    for(int i = 1;i < F.size(); i++){
        //adj[i].push_back(F[i]);
        adj[F[i]].push_back(i);
    
    }
    for(auto i : S[0]){
        pos[S[0][i]] = i;
    }
    vector<int>vec;
    for(auto i : S[0])vec.push_back(i);
    int cnt = 0;
    for(int i = 0;i < vec.size(); i++){
        
        int y = 0;
        if(vec[i]==1)flag = true;
        int R_ind = dfs(vec[i]);
        if(vec[i]==1){
            //cout << R_ind << " ";
        }
        for(int j = i+1; j<=R_ind; j++){
            R_ind = max(R_ind, dfs(vec[j]));
            }
 
        i = max(i, R_ind);
        cnt++;
    
 
        
        
 
    }
    return cnt;
    
}
 

Compilation message

september.cpp: In function 'int solve(int, int, std::vector<int>, std::vector<std::vector<int> >)':
september.cpp:26:21: warning: 'void* memset(void*, int, size_t)' clearing an object of type 'class std::vector<int>' with no trivial copy-assignment; use assignment or value-initialization instead [-Wclass-memaccess]
   26 |     memset(idx, 0, N);
      |                     ^
In file included from /usr/include/c++/10/vector:67,
                 from september.h:1,
                 from september.cpp:1:
/usr/include/c++/10/bits/stl_vector.h:389:11: note: 'class std::vector<int>' declared here
  389 |     class vector : protected _Vector_base<_Tp, _Alloc>
      |           ^~~~~~
september.cpp:29:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   29 |     for(int i = 1;i < F.size(); i++){
      |                   ~~^~~~~~~~~~
september.cpp:40:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   40 |     for(int i = 0;i < vec.size(); i++){
      |                   ~~^~~~~~~~~~~~
september.cpp:42:13: warning: unused variable 'y' [-Wunused-variable]
   42 |         int y = 0;
      |             ^
# 결과 실행 시간 메모리 Grader output
1 Incorrect 3 ms 9816 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 3 ms 9816 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 9 ms 19800 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 3 ms 9816 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 9 ms 19800 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 3 ms 9816 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 9 ms 19800 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 3 ms 9816 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 9 ms 19800 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 3 ms 9816 KB Output isn't correct
2 Halted 0 ms 0 KB -