이전에 Softeer PYTHON Lv1 연습하다 런타임에러 났던 문제 다시 파헤쳐보기
2024.06.02 - [취준/2. 코딩테스트] - [Softeer] PYTHON 연습문제 풀이 Lv1 나무심기 ~ 주행거리 비교하기
참고로 이제 Softeer는 쳐다도 안볼꺼임.. 흥이다.. 이제 자바로 코테 공부할거임..........
[7353. 나무심기] https://softeer.ai/practice/7353
JAVA로 푼 풀이는 통과
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
ArrayList<Integer> arr = new ArrayList<Integer>();
for(int i=0; i<n; i++){
arr.add(sc.nextInt());
}
int res = 0;
res = ((arr.get(0)*arr.get(1) > arr.get(n-1)*arr.get(n-2)) ? arr.get(0)*arr.get(1) : arr.get(n-1)*arr.get(n-2));
System.out.println(res);
}
}
우선 런타임 에러 났던 PYTHON 코드
import sys
from itertools import permutations, combinations
n = int(input())
arr = map(int, input().split(""))
arr.sort()
answer = max(arr[0] * arr[1], arr[n-1] * arr[n-2])
print(answer)
그때 당시 옛 동기가 문자열을 정수형 배열로 처리하는 부분에서 문제가 있을 것이라는 힌트를 주었고, 해당 부분을 아래와 같이 수정하니
import sys
from itertools import permutations, combinations
n = int(input())
# arr = map(int, input().split(""))
arr = list(map(int, sys.stdin.readline().split()))
arr.sort()
answer = max(arr[0] * arr[1], arr[n-1] * arr[n-2])
print(answer)
놀랍게도 통과 ⭐️
sys.stdin.readline()
input()
vscode 상에는 두 경우 모두 문제없이 돌아가지만 근본적으로 무슨 차이가 있나 확인해보았다. (참고로 채점하는 Python 버전은 3.6)
input()
sys.stdin.readLint()
찾아보니 Softeer 외에 백준 등의 다른 코딩테스트 플랫폼들에서 종종 보이는 이슈라고 한다. 끝!
Python 2.x
input()과 raw_input()으로 나뉜다. raw_input()의 경우 입력값을 무조건 문자로 받는 반면, input()은 입력으로 들어온 값을 판단하여 그 값에 맞는 자료형으로 초기화한다.
<type 'str'>
Python 3.x
raw_input() 함수는 사라지고 input()이 raw_input() 역할을 하게 된다. 따라서 input()은 입력값을 모두 문자열로 받는다. 또한 3.x로 넘어오며 모든 변수가 객체(object) 처리됨에 따라 결과 값도 type에서 class로 바뀌게 되었다.
<class 'str'>
[Python | input보다 sys.stdin.readline의 처리 속도가..] https://green-leaves-tree.tistory.com/12
[input()과 sys.stdin.readline()의 차이] https://hs-archive.tistory.com/35
[Python | Input vs. sys.stdin.readline 차이점?] https://buyandpray.tistory.com/7
[Python | 입력 받기 (sys.stdin.readline)] https://herjh0405.tistory.com/50
[BAEKJOON] 유형별 문제풀이(1) | 그래프 DFS & BFS | JAVA (0) | 2024.08.25 |
---|---|
[SWEA] JAVA | 다시 풀어볼 문제들 기록(1) (feat. 누적합 알고리즘) (0) | 2024.08.16 |
[Softeer] PYTHON | 연습문제 풀이 Lv2(2) 지동 자동 구축 ~ (0) | 2024.06.30 |
[Softeer] PYTHON | 연습문제 풀이 Lv2(1) X marks the Spot ~ 장애물 인식 프로그램 (0) | 2024.06.30 |
[Softeer] PYTHON 연습문제 풀이 Lv1 나무심기 ~ 주행거리 비교하기 (2) | 2024.06.02 |
댓글 영역