Home

[백준] 19237번 어른 상어 _ 문제 풀이

1. 문제 https://www.acmicpc.net/problem/19237 2. 풀이 삼성 SW 역량테스트 문제입니다. 풀이 순서는 아래와 같습니다. 이 문제는 상어가 move 하면서 주변 냄새를 남긴 곳들의 값이 1씩 감소합니다. 이러한 과정을 수행하기 위하여 함수로 나눴습니다. move(상어들을 이동시킴) : 가능한 갈 수 있는 곳 모두 체크 -> 주변에 빈 곳과 자신의 냄새가 있는 곳을 찾음 -> 주변에 빈 곳이 있으면 우선순위 높은거 선택. 없으면 냄새가 있는 곳에서 우선순위 높은거 선택. minus_smell(냄새 값들을 1씩 감소시킴) ...

Read more

시리얼 통신의 종류(Uart/Usart, I2C, SPI)와 개념 및 차이점 정리

1. 시리얼(Serial) 통신이란? 병렬 데이터의 형태를 직렬 방식으로 전환하여 데이터를 전송하는 컴퓨터 하드웨어의 일종입니다. 시리얼(Serial)이라는 것은 직렬이라는 뜻으로, 패러럴(Parallel)과 반대되는 단어이다. 통신에는 직렬 통신과 병렬 통신의 2가지 방식이 존재합니다. 직렬 통신은 데이터를 보낼 때 한 데이터 선(lane)에서 데이터를 보내는 방식이고, 병렬 통신은 여러 개의 선(lane)에서 보내고자 하는 데이터를 나눠서 보내는 것입니다. 예를 들어 1010 데이터를 보내려고 할 때 상황은 아래와 같습니다. 시리얼 통신에서는 1개의 lane으로 데이터를 모두 ...

Read more

MBR & GPT(파티션, partition)과 FAT32 & NTFS & EXT3(파일 시스템, File System)이란? 개념 및 차이점 정리

MBR, GPT와 FAT32, exFAT, NTFS, ex4와 같은 용어 개념이 다소 헷갈려 아래와 같이 내용을 정리해 보았습니다. 1. 파티션(partition)과 파일 시스템(File System)의 개념 파티션이란 물리 디스크를 파티션이라는 논리 단위로 나누는 것입니다. 한 디스크에서 최소 1개의 논리 단위 파티션이 필요하며, 여러 가지 논리 단위로 나눌 수 있습니다. 우리가 사용하는 컴퓨터에서 C드라이브, D드라이브로 인식되는 것도 파티션입니다. 파일 시스템이란 컴퓨터에서 파일이나 자료를 쉽게 발견 및 접근할 수 있도록 보관 또는 조직하는 체제입니다. 예를 들어, 설명해보겠습니다. 512GB...

Read more

[백준] 1284번 집 주소 _ 문제 풀이

1. 문제 https://www.acmicpc.net/problem/1284 2. 풀이 while True: _input = input() if _input == '0': break answer = 2 + len(_input) - 1 for x in _input: if x in '1': answer += 2 elif x in '23456789': answer += 3 elif x in '0': answer += 4 print(answer)

Read more

[백준] 1193번 분수찾기 _ 문제 풀이

1. 문제 https://www.acmicpc.net/problem/1193 2. 풀이 X = int(input()) i = 1 while True: if X > i*(i+1)/2: i+=1 continue residue = X - (i-1)*(i)//2 if i % 2 == 1: print("%d/%d" % ( i+1 - residue , residue )) else: print("%d/%d" % ( residue , i+1 - residue )) break

Read more

DISM 명령어로 Windows 장치 드라이버(device driver) 백업/추출하기

Windows 10 나 Windows Server 를 사용하다 보면 해당 OS에서 사용하고 있는 Device Driver(디바이스 드라이버 or 장치 드라이버)를 추출하여 따로 백업하고 싶은 경우가 있습니다. 다른 컴퓨터에 device driver를 옮긴다던지, OS를 다른 버전으로 재설치한다던지 하는 많은 다양한 이유가 있을 것입니다. 또, 문제가 발생한 디바이스 드라이버를 확인하기 위하여 모든 디바이스 드라이버를 백업하여 놓고 문제가 있는 드라이버를 하나하나씩 확인하는 경우가 있을 수도 있습니다. 위와 같은 경우에 폴더를 뒤져 직접 하나하나 찾아서 백업을 하거나 다른 프로그램을 설치해야 하는 문제점이 발생하는...

Read more

[백준] 17144번 미세먼지 안녕! _ 문제 풀이

1. 문제 https://www.acmicpc.net/problem/17144 2. 풀이 2.1. 내 풀이 삼성 SW 역량테스트 문제입니다. 아래와 같은 풀이를 통하여 문제를 해결했습니다. python으로 제출하면 시간초과가 발생하고 pypy3로 제출하면 시간초과가 발생하지 않습니다. 아래와 같은 문제들로 시간을 많이 잡아 먹었습니다. map 을 복사할 때, 공기청정기의 좌표도 복사하지 않아 문제가 발생했습니다. 공기 청정기의 동작에서 횟수 1번이 틀려 테스트케이스는 다 맞았지만, 제출시 ‘틀렸습니다’가 떴습니다. R, C, T = map(int, input().split()) map = [ ...

Read more

[백준] 14425번 문자열 집합 _ 문제 풀이

1. 문제 https://www.acmicpc.net/problem/14425 2. 풀이 2.1. 오답 풀이 집합을 이용하여 N과 M 문자열 집합의 교집합을 사용해서 문제를 해결했습니다. N, M = map(int, input().split()) N_set, M_set = set(), set() for _ in range(N): N_set.add(input()) for _ in range(M): M_set.add(input()) print(len(N_set & M_set)) 2.2. 정답 풀이 M 문자열에 동일한 문자열이 들어오는 경우를 고려하지 않으면, 위의 문제 풀이는 오답이...

Read more

[백준] 9498번 시험 성적 _ 문제 풀이

1. 문제 https://www.acmicpc.net/problem/9498 2. 풀이 2.1. 내풀이 N = int(input()) if N >= 90 : print('A') elif N >= 80: print('B') elif N >= 70: print('C') elif N >= 60: print('D') else: print('F') 2.2. 숏코딩 print('FFFFFFDCBAA'[int(input())//10])

Read more