ผลต่างระหว่างรุ่นของ "Algo lab/zamoo"

จาก Theory Wiki
ไปยังการนำทาง ไปยังการค้นหา
(สร้างหน้าด้วย "<syntaxhighlight lang="c++"> #include <iostream> #include <list> using namespace std; const int MAX_BALL_NUMBER = 200010; int n; list<int> balls; bool...")
 
 
แถว 41: แถว 41:
 
       // check if ball a is in the list?
 
       // check if ball a is in the list?
 
       if(check(a)) {
 
       if(check(a)) {
delete_from_front(a);
+
        delete_from_front(a);
 
       } else {
 
       } else {
balls.push_front(a);
+
        balls.push_front(a);
in_list[a] = true;
+
        in_list[a] = true;
 
       }
 
       }
 
     } else {
 
     } else {
 
       if(check(a)) {
 
       if(check(a)) {
delete_from_back(a);
+
        delete_from_back(a);
 
       } else {
 
       } else {
balls.push_back(a);
+
        balls.push_back(a);
in_list[a] = true;
+
        in_list[a] = true;
 
       }
 
       }
 
     }
 
     }

รุ่นแก้ไขปัจจุบันเมื่อ 04:28, 26 สิงหาคม 2567

#include <iostream>
#include <list>

using namespace std;

const int MAX_BALL_NUMBER = 200010;

int n;
list<int> balls;
bool in_list[MAX_BALL_NUMBER];

void init()
{
  for(int i = 1; i < MAX_BALL_NUMBER; i++)
    in_list[i] = false;
}

bool check(int a)
{
  return in_list[a];
}

void delete_from_front(int a)
{
}

void delete_from_back(int a)
{
}

int main()
{
  init();
  
  cin >> n;
  for(int i=0; i<n; i++) {
    int d, a;
    cin >> d >> a;
    if(d == 0) {
      // check if ball a is in the list?
      if(check(a)) {
        delete_from_front(a);
      } else {
        balls.push_front(a);
        in_list[a] = true;
      }
    } else {
      if(check(a)) {
        delete_from_back(a);
      } else {
        balls.push_back(a);
        in_list[a] = true;
      }
    }
  }
}