Challenge
Careers
Class
Connect
로그인 후 문제풀이가 가능합니다.
JS
class CrossRoadsSystem { constructor(typeCount) { this.system = [] this.typeList = Array.from({length: typeCount}, (_, i) => i) this.record = [] this.error = false this.typeList.forEach(type => { this.system[type] = { waiting: [], index: 0 } }) } /** * * @param time 기록될 시간 * @returns {number} 0 -> 교착 상태, 1 -> 정상, 2 -> 차량 없음 */ proces...
[HSAT 3회 정기 코딩 인증평가 기출] 교차로 , 시간복잡도 질문
#include #include #include #include using namespace std; vectorv; int cnt; bool now[5]; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL), cout.tie(NULL); int N; queue>a; queue>b; queue>c; queue>d; scanf("%d", &N); vectorans(N); ans.assign(N , -1); int curr_time; int min_time; for (int i = 0; i < N; i++) { int t; char w; scanf("%d %c", &t, &w); // 순서 , 시간 if (w == 'A') { a.push({ i,t }); } else if (w == 'B') { b.push({ i,t }); } else if (w == 'C') { c.push({ i,t }); } else d...
[인증평가 3차 기출] 교차로 문제 질문입니다.
안녕하세요. 해당 문제에서 time을 1씩 증가하다가 대기선에 차가 없을 때는 남아있는 큐의 최소 시간인 mini로 업데이트합니다. 그런데 mini의 초기값을 1e9로 하면 오답이 존재하고, int(1e9)로 하면 통과하는데 이유가 무엇일까요? import sys from collections import deque input = sys.stdin.readline n = int(input()) q= [deque() for _ in range(4)] for i in range(n): time,alpha = input().split() q[ord(alpha)-ord("A")].append((int(time),i)) result = [-1]*n time = -1 is_waiting = [0]*4 while q[0] or q[1] or q[2] or q[3]: mini = 1e9 for i in range(4):...
인증평가 3차 교차로 반례 문의
몇일 고민을 해봐도 코드는 제대로 짠것 같은데.. 오답이 많네요. 반례 제시 부탁드립니다. import sys n = int(input()) cross = [] for i in range(n) : a, b = input().split() a = int(a) b = ord(b) - 65 cross.append([a,b,i]) #time, cross, car_number cross.sort() #print(cross) q = [[],[],[],[]] #A,B,C,D에 대한 Q 생성 t0 = cross[0][0] c0 = cross[0][1] n0 = cross[0][2] q[c0].append(n0) count_time = t0 index = 1 ans = [-1]*(n+1) # D > A > B > C > D # 3 > 0 > 1 > 2 > 3 flag = 0 while q[0] or q[1] or q[2] or q[3] : #현재 시간 기준 차량 대기 while index < ...
[인증평가(3차) 기출] 교차로 -> 이 문제 관련 질문드립니다.
[인증평가(3차) 기출] 교차로 문제 관련 질문 드립니다. 제약조건에 첫번째가 2 <= N <= 200000 인데, N이 진입하는 차량 대수 라고 생각했습니다. (A, B, C, D에 진입하는 총 차량의 수) 그런데 문제에 진입하는 차량이 1대인 경우가 있었습니다. 제약조건의 N이 어떤것인지 알 수 있을까요? 몇일째 고민하는데 잘 모르겠습니다. 같이 고민해주시면 감사하겠습니다.
인증평가(3차)기출_교차로 질문입니다.
문제내에 있는 예제3 질문입니다. 예제3에서 0 A 0 B 0 B 2 D 2 C 4 B 순으로 차량이 도착하였습니다. 출력예제는 0 1 2 4 3 4 입니다. 그런데 생각해보면 0 초에 A 와 C가 동시에 통과하는것이 가능한데요 이 경우는 생각하지 않고 풀어야 하나요? 그냥 진행하는 차량 우측에 차량이 있으면 출발하지 않는다 이것만 지키면 되는건지 최대한 많은수의 차량을 통과시키는 조건으로 해야 하는지 문의드립니다.