Submission #1306944

#TimeUsernameProblemLanguageResultExecution timeMemory
1306944michael12선물 (IOI25_souvenirs)C++20
Compilation error
0 ms0 KiB
#include "souvenirs.h"
#include<bits/stdc++.h>
#define ff first
#define ss second
#define pb push_back
#define mp make_pair
#define sm pair<vector<int>, long long>
void sub3(int n, int P0){
   sm T = transaction(P0 - 1);
   if(T.ff.size() == 1){
      int p1 = P0 - 1 - T.ss;
      transaction(p1 - 1);
      transaction(p1 - 1);
   }
   else{
     int sm2 = P0 - 1 - T.ss;
     transaction(sm2 / 2);
     transaction(sm2 / 2);
   }
}
using namespace std;
void buy_souvenirs(int N, long long P0){
     long long p = P0;
     if(N == 2){
     transaction(p - 1);
     return;
     }
     if(N == 3){
        sub3(N, P0);
        return;
     }
     
}

Compilation message (stderr)

souvenirs.cpp: In function 'void sub3(int, int)':
souvenirs.cpp:7:17: error: 'vector' was not declared in this scope
    7 | #define sm pair<vector<int>, long long>
      |                 ^~~~~~
souvenirs.cpp:9:4: note: in expansion of macro 'sm'
    9 |    sm T = transaction(P0 - 1);
      |    ^~
souvenirs.cpp:7:17: note: suggested alternatives:
    7 | #define sm pair<vector<int>, long long>
      |                 ^~~~~~
souvenirs.cpp:9:4: note: in expansion of macro 'sm'
    9 |    sm T = transaction(P0 - 1);
      |    ^~
In file included from /usr/include/c++/13/vector:66,
                 from souvenirs.h:2,
                 from souvenirs.cpp:1:
/usr/include/c++/13/bits/stl_vector.h:428:11: note:   'std::vector'
  428 |     class vector : protected _Vector_base<_Tp, _Alloc>
      |           ^~~~~~
/usr/include/c++/13/vector:86:13: note:   'std::pmr::vector'
   86 |       using vector = std::vector<_Tp, polymorphic_allocator<_Tp>>;
      |             ^~~~~~
souvenirs.cpp:7:12: error: 'pair' was not declared in this scope; did you mean 'std::pair'?
    7 | #define sm pair<vector<int>, long long>
      |            ^~~~
souvenirs.cpp:9:4: note: in expansion of macro 'sm'
    9 |    sm T = transaction(P0 - 1);
      |    ^~
In file included from /usr/include/c++/13/utility:69,
                 from souvenirs.h:1:
/usr/include/c++/13/bits/stl_pair.h:187:12: note: 'std::pair' declared here
  187 |     struct pair
      |            ^~~~
souvenirs.cpp:7:24: error: expected primary-expression before 'int'
    7 | #define sm pair<vector<int>, long long>
      |                        ^~~
souvenirs.cpp:9:4: note: in expansion of macro 'sm'
    9 |    sm T = transaction(P0 - 1);
      |    ^~
souvenirs.cpp:10:7: error: 'T' was not declared in this scope
   10 |    if(T.ff.size() == 1){
      |       ^