Submission
Status:
(PPPPPPPPPPPPPPP)(PPPPPPPP)(-SSSSSSSSS)(-SSSSSSSSS)(-SSSSSSSSS)(-SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS)
Subtask/Task Score:
{3/3}{7/7}{0/12}{0/17}{0/21}{0/40}
Score: 10
User: koon
Problemset: รถไฟตู้เสบียง (Dining Car)
Language: cpp
Time: 0.002 second
Submitted On: 2026-04-24 13:27:48
#include <bits/stdc++.h>
#include "dining_car.h"
using namespace std;
int find_min(int l, int r) {
while (l < r) {
int mid = (l + r) / 2;
if (compare_cars(mid, mid+1) == -1)
r = mid;
else
l = mid + 1;
}
return l;
}
pair<int,int> locate_dining_cars(int N) {
int A = find_min(1, N);
int B = -1;
for (int i = 1; i <= N; i++) {
if (i == A) continue;
if (B == -1 || compare_cars(i, B) == -1)
B = i;
}
if (A > B) swap(A, B);
return {A, B};
}