본문 바로가기
728x90

Algorithm - Java/Softeer29

[Softeer - Lv.3] 안전운전을 도와줄 차세대 지능형 교통시스템 Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai처음에 보고 DFS로 했다가 테스트 케이스 40개 중에 3개만 오답이 나서한참을 찾다가 BFS도 하니까 이번엔 오답이 더 늘어서한참을 찾다가 조건문 중첩이 문제라는걸 깨닫고 겨우 해결한 문제풀고나니 결론은 오답 3개는 DFS의 오버플로우인 것 같다..진짜 DFS는 쓰면 쓸 수록 안 좋은... [문제 제약 조건]1 ≤ N, T ≤ 100처음에 제일 왼쪽 위의 교차로로 아래쪽 방향에서 진입하고 있으므로, 교차로(1,1)의 신호가 2, 10번 중 하나가 아니면 더 이상 진행을 할 수 없으므로 교차로는 단 하나[교차로(1,1)]로 계산한다. [입력형식]입력으로는 N과 시간 T가 첫 줄에 주어진다.다음 N2개의 줄에 각 교차로의 신호 집합이 주어.. 2025. 2. 10.
[Softeer - Lv. 3] Phi Squared Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai처음에 어케하지..? 했다가 큐 두번이라는 생각이 번뜩하면서바로 풀어버린 문제 오래 안걸리고 바로 풀어서 기분이 좋다.배열이나 ArrayList를 생각했다가 인덱스 관리가 너무 어려울 것 같아서Pair 클래스 선언 후 큐 두개로 해결했다. [문제 제약 조건]Java3초1024MB 1≤N≤500000각 미생물의 초기 크기는 1 이상 N 이하의 정수이다. 또한 같은 초기 크기를 가지는 두 미생물은 존재하지 않는다.1. 하루에 한 번 줄의 맨 앞에 있는 미생물부터 각 미생물은 차례대로 인접한 미생물 중 자신보다 크기가 작거나 같은 것들을 전부 흡수한다. 다른 미생물을 흡수한 경우, 미생물의 크기는 흡수한 미생물의 크기의 합만큼 커진다.2. 흡.. 2025. 2. 9.
[Softeer - Lv. 3] GINI야 도와줘 Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai보자마자 BFS일 것 같았던 문제근데 BFS를 두번 써야 했음 ㅋㅋBFS를 진행하면서비가 각 좌표에 도착하는 최소시간과 비교하면되는 문제 자체는 다른 문제보다 쉬운 문제. [문제 제약 조건]Java1초256MB R, C ≤ 50‘H’와,’W’는 하나씩만 주어진다.태범이는 소나기와 강을 지나지 못하며, 소나기는 강과 태범이의 집에 옮겨지지 않는다.(소나기는 강으로 가면 소멸)  [입력형식]첫째 줄에 R과 C가 주어진다. 다음 N개 줄에는 지도가 주어지며, 문제에서 설명한 문자만 주어진다. [출력형식]첫째 줄에 태범이가 집으로 갈 수있는 가장 빠른 시간을 출력한다. 만약 소나기를 피해 집에 도착할 수 없다면 “FAIL”을 출력한다. 입력4 .. 2025. 2. 8.
[Softeer - Lv.3] 슈퍼컴퓨터 클러스터 Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai간만에 괜찮게 푼 문제.오버플로우에 대해서 공부할 수 있었다.늘 그렇듯 dps로 했다가 이진탐색으로 변경그래도 이진탐색이 바로 내 머리에서 떠올라서 기분이 좋았음. [문제 제약 조건]Java5초1024MB 1≤N≤10^5인 정수1≤ai≤10^9인 정수1≤B≤10^18인 정수 [입력형식]첫째 줄에 컴퓨터의 수와 예산을 나타내는 정수 N과 B가 공백을 사이에 두고 주어진다.둘째 줄에 각 컴퓨터의 성능을 나타내는 N개의 정수 a1, a2, ..., an이 공백을 사이에 두고 주어진다.B의 범위가 매우 넓어, 사용하는 프로그래밍 언어에 따라 64비트 정수형을 사용해야 할 수 있음에 유의하시오. [출력형식]첫째 줄에 예산을 효율적으로 사용했을 때.. 2025. 2. 7.
[Softeer - Lv. 3] 나무 수확 Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai이제 남은 문제가 거의 다 트리 아니면 DP라서 어렵다...그냥 보고 바로 구현 -> 시간초과 -> 다시 풀기이 순서를 문제마다 하고 있다.DP는 그냥 싫다. 이제...이 문제는 DP 구현 혼자 했다가 반례 하나에 2시간을 뻘짓했다.근데 그냥 문제를 잘못풀었는데 나머지가 뚫린 거였다.참 슬프다... [문제 제약 조건]Java3초1024MB 2 ≤ n ≤ 1,0001 ≤ 열매 수확량 ≤ 1,000 [입력형식]첫 번째 줄에는 격자의 크기를 나타내는 n 이 주어집니다.두 번째 줄 부터는 n 개의 줄에 걸쳐 각 행에 해당하는 열매 수확량 n 개가 공백을 사이에 두고 주어집니다. [출력형식]첫 번째 줄에 수로와 스프링클러를 잘 설치하여 얻을 수 .. 2025. 2. 6.
[Softeer - Lv.3] 나무 섭지 Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai그래프 탐색 문제. 푸는 방법 자체는귀신이 출구까지 올 수 있는 최단 시간 이전에남우가 출구에 도달할 수 있는가이다.경로가 어떻든 귀신이 먼저 출구에 도착하면남우는 귀신을 뚫고 갈 수 없기 때문이다.그래서 푸는건 금방 풀었는데 맨날 하던 DFS로 하니 시간 초과가 떴다.그 김에 BFS로 바꾸면서 BFS 공부함. [문제 제약 조건]Java2초1024MB 1 ≤ n, m ≤ 1,0003 ≤  n * m [입력형식]첫 번째 줄에는 격자의 크기를 나타내는 n, m값이 공백을 사이에 두고 주어집니다.두 번째 줄부터는 n개의 줄에 걸쳐 각 행에 해당하는 격자의 정보가 공백없이 주어집니다. 'N'은 남우가 있는 곳, 'D'는 출구가 있는곳, 'G'는.. 2025. 2. 5.
[Softeer - Lv. 3] 자동차 테스트 Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai간단간단.푸는데 10분도 안걸린 문제여서 원래는 안올리지만하루 하나씩 풀어서 올리기로정해서 올린당. [문제 제약 조건]Java3초1024MB * 1 ≤ n ≤ 50,000* 1 ≤ q ≤ 200,000* 1 ≤ 자동차의 연비 ≤ 1,000,000,000* 1 ≤ mi ≤ 1,000,000,000 (i는 1 이상 q 이하입니다. 즉, mi 는 각 질의에 대응하는 중앙값을 의미합니다.) [입력형식]첫 번째 줄에 n, q가 공백을 사이에 두고 주어집니다.두 번째 줄에는 n개의 자동차의 연비에 해당하는 값이 공백을 사이에 두고 주어집니다.주어지는 자동차의 연비는 서로 다름을 가정해도 좋습니다. -> 이게 난이도를 확 낮춰준다.세 번째 줄부터는 .. 2025. 2. 4.
[Softeer - Lv. 3] 통근버스 출발 순서 검증하기 Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai그냥 대충 풀면 바로 n^3으로 시간초과나는데문제 자체는 간단해서 어려운 문제.생각을 해야할 부분이 카운팅인데결국은 검색해서 찾았다.... 답지 봐버림... [Softeer 소프티어] 통근버스 출발 순서 검증하기 (Python 파이썬)소프티어 인증평가 4차 기출 - 통근버스 출발 순서 검증하기 풀이 "특명: 수학 연산으로 시간복잡도를 줄여라!"velog.io보고 감탄했다. 진짜 수학이나 논리를 잘 생각해야 문제를 풀 수 있나보다. [문제 제약 조건]3≤N≤5,000인 정수버스 번호는 서로 중복되지 않는다. [입력형식]첫 번째줄에 수열의 크기 N이 주어진다.두 번째줄에 1부터 N까지의 정수가 재배열된 수열이 공백을 사이에 두고 주어진다. .. 2025. 2. 2.
[Softeer - Lv. 3] 효도 음식 Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai또 DP문제. 어렵당처음에는 쪼갤 경계가 될 인덱스를 잡고거기서 바로 2분할 탐색을 실시했었는데 당연히 시간초과가 떴다.DP는 생각은 했었다가 2차원 배열로 하려고 했는데 그럼 10^12 아닌가 했었는데1차원 배열 4개를 만들면 되는거였다. [문제 제약 조건]Java2초1024MB 3 ≤ n ≤ 100,000-1,000 ≤ 선호도 ≤ 1,0001. 요리는 연속한 재료들로만 만들 수 있습니다. 이때 최소 1개 이상의 재료를 선택해야만 합니다.2. 서로 다른 요리에 사용되는 재료끼리 겹쳐서도, 그리고 인접해서도 안됩니다. [입력형식]첫 번째 줄에 n 이 주어집니다.두 번째 줄에는 부모님의 선호도를 나타내는 n 개의 숫자가 공백을 사이에 두고.. 2025. 2. 2.
728x90