전체 글 278

list(map(int, input().strip().split())) 와 [map(int, input().strip().split())] 의 차이

문득 알고리즘 문제를 풀다가 list(map(int, input().strip().split())) 랑 [map(int, input().strip().split())] 의 차이 의 차이에 대해 궁금해서 찾아봤다. 정말 직관적으로 이해가 가능했다. 이들의 차이를 이해하려면 Python의 'map' 함수와 리스트 컴프리헨션에 대해 이해할 필요가 있다. 1. list(map(int,input().strip(),split())) input().strip(),split() 은 입력된 문자열을 공백을 기준으로 나누어 리스트로 만든다. map(int, ...) 는 이 리스트의 각 원소를 정수로 변환한다. 'map' 함수는 지정된 함수(여기서는 'int')를 리스트의 각 원소에 적용한다. list(...) 는 'map..

[백준/알고리즘/python/java] 14502번 - 연구소

이 문제는 DFS와 BFS를 결합한 흥미로운 접근 방식을 요구합니다. 이 문제의 핵심은 "가능한 한 많은 영역을 안전하게 보호하는 벽의 배치를 찾는 것" 입니다. 여기서 주목해야 할 점은 "모든 벽의 조합을 시도"해보고, "각 경우에 대해 바이러스가 얼마나 퍼지는지를 시뮬레이션"해야 한다는 것입니다. 이를 위해서 DFS를 사용해 벽을 세우고, BFS로 바이러스의 확산을 시뮬레이션합니다. 초기 접근 방법은 아래와 같습니다. from collections import deque import sys input = sys.stdin.readline # 벽을 3개를 세운다. -> 모든 경우의 수를 다 세어본다 : dfs # 바이러스를 퍼뜨려본다. # 0의 개수를 구한다. # 이 값을 max값과 계속 비교하면서 최..

[백준/알고리즘/python/java] 2852번 - NBA 농구

해당 문제는 NBA 농구 경기에서 특정 팀이 얼마나 오랫동안 리드했는지를 계산하는 문제입니다. 이 문제를 풀 때는 득점 순서, 득점 시간, 현재 리드 상태를 정확히 추적하는 것이 중요합니다. 문제를 딱 봤을 때, 뭔가 "득점이 성공된 시간 순서"대로 "1팀과 2팀 중에 어떤 팀이 넣었는지" 알아야 할 것 같습니다. 그리고, 득점을 함으로써 앞서가는지 혹은 동점이 됐는지도 체크"해야 하는 것이 중요합니다. 동점이 된 순간부터는 어느 팀도 리드하지 않는 상태가 되기 때문입니다. 이렇게, 주의할 점은 아래와 같이 요약할 수 있겠습니다. 경기 시간 처리 : 경기 시간은 "시:분" 형식으로 주어지며, 이를 총 분으로 변환해야 합니다. 상태 관리 : 경기의 현재 상태(동점, 팀1 리드, 팀2 리드)를 추적해야 합니..

[JAVA] 자바에 대해서 알아보자!

1. 자바의 중요성과 발전 - 자바가 유명해진 이유는 다양한 운영체제(OS)에서 동일한 코드를 실행할 수 있게 만든 것이다. 자바가 나오기 전에는 각 OS에 맞게 코드를 다르게 작성해야 했지만, 자바는 이런 문제를 JVM을 통해 해결했다. 2. 자바 가상 머신(JVM) - JVM은 자바 코드를 OS와 독립적으로 실행시키는 역할을 한다. 이는 자바 프로그램이 OS에 구애받지 않고 실행될 수 있도록 해준다. 바이트코드는 플랫폼 독립적이며, 컴파일된 자바 코드(바이트코드)는 JVM을 통해 실행된다. (※ 바이트코드라고 해서 010011...로 이루어진 코드가 아니라 단순히 컴파일된 자바 코드를 바이트코드라고 한다.) 3. 자바의 실행 과정 - 소스코드는 컴파일 과정을 거쳐 .class파일(바이트 코드)로 변환..

[PYTHON] TYPEERROR: ‘UNICODE’ OBJECT DOES NOT SUPPORT ITEM ASSIGNMENT

파이썬에서는 String과 List는 몇 가지 상황에서 비슷하게 작동할 수 있다. 예를 들어, 각 요소를 반복하는 것과 같은 경우이다. for i in string_s: # 무언가를 수행 for i in list_l: # 무언가를 수행 그러나, 요소를 수정하려고 할 때, 중요한 차이점이 나타난다. 리스트와 달리 파이썬의 문자열은 "변경할 수 없다". (immutable.) 문자열에서 문자를 아래와 같이 변경하려고 하면, string_s[i] = 'X' TypeError: ‘unicode’ object does not support item assignment"라는 오류가 발생한다. 문자열을 수정하려면 먼저 리스트로 변환한 후 변경하고 다시 문자열로 결합해야 한다. list_s = list(string_s..

반응형