CS42 백준 11719 & 11720 11719번 - 그대로 출력하기 2 11719번의 경우 11718번과 비슷하지만, 빈 줄이 주어질 수도 있고, 각 줄의 앞 뒤에 공백이 있을 수 있다는 것이 다름 sys.stdin.readline()의 경우 EOF 에러를 만나면 빈 문자열을 반환하기 때문에 에러를 만나 반환되는 빈 문자열을 - 처리할 경우: import sys while True: try: word = sys.stdin.printline().rstrip("\n") if word != "": print(word) else: break except: break 입력으로 공백이 들어올 수도 있는데 word != ""에 의해 무시되어 버림 - 처리하지 않을 경우: import sys while True: try: word = sys.stdin... 2023. 9. 21. 백준 11718 - input(), sys.stdin.readline(), sys.stdin.readlines() 백준 11718 그대로 출력하기 문제를 통해 파이썬의 입출력에 대해서 살짝 알아보았음 아래 풀이로 성공 while True: try: print(input()) except: break() 하지만 조금 더 빠른 입출력을 위해 sys.stdin을 사용할 필요가 있다는 것을 알게 됨. input()은 입력을 받고 문자열 변환 개행 제거 등의 작업이 들어가지만, sys.stdin.readline()이나 readlines()는 그렇지 않음. 따라서 sys를 사용하면 .rstrip() 등으로 \n 제거해야 하지만 속도에서나 메모리 사용에서나 더 효율적. 또한 입력값이 없을 때 input()은 EOFError를 발생시키지만, sys.stdin.readline()은 빈 문자열을 반환 sys.stdin에는 readli.. 2023. 9. 20. 백준 10951, 10952 (python) 오랜만에 알고리즘을 푸는데 입출력 방식을 다 까먹었다; 임의의 수를 입력 받을 때는 try, except로 예외처리를 하여 스무스하게 받아주는 테크닉을 사용 (티스토리 코드 블럭의 인덴테이션은,,, 휴) while True: try: a, b = map(int, input().split()) print(a+b) except: break 10952번처럼 종료 조건(입력이 0 0 인 경우)이 명확한 경우에는 해당 조건을 사용 while True: a, b = map(int, input().split()) if (a==0) and (b==0): print(a+b) else: break 2023. 9. 19. [혼공컴운] 스레드 스레드 프로세스를 구성하는 실행의 흐름 단위로, 하나의 프로세스는 여러 개의 스레드를 가질 수 있음. 여러 개의 스레드는 하나의 프로세스 자원을 공유하면서, 각자의 스레드 ID와 PC값, 스택을 가짐 멀티 프로세스 vs 멀티 스레드 멀티 프로세스 동일한 프로세스를 동시에 실행하면 코드 영역, 데이터 영역, 힙 영역 등을 비롯한 모든 자원이 복제 되어 메모리에 적재 각 프로세스는 독립적으로 운영되기 때문에 하나의 프로세스에 문제가 있다고 하더라도 다른 프로세스에는 큰 영향이 없을 수 있음 프로세스 간 통신(IPC)도 소켓이나 파이프를 통해서 충분히 가능함. 프로세스끼리 공유하는 데이터를 저장하는 공유 메모리(shared memory) 영역을 이용해서 통신하는 방법도 존재 멀티 스레드 코드, 데이터, 힙, .. 2023. 4. 11. 이전 1 2 3 4 5 6 7 ··· 11 다음