반응형 분류 전체보기154 #30 [파이썬] 프로그래머스: N으로 표현 https://programmers.co.kr/learn/courses/30/lessons/42895 코딩테스트 연습 - N으로 표현 programmers.co.kr 해결 과정 1~8개의 N을 사용할 수 있다. 사용 개수에 따라 가능한 모든 경우를 저장한 후, number가 있는 지 없는 지 판단한다. 사용 개수를 key, 가능한 경우를 value로 하여 dictionary를 만든다. 5, 55, 555, 5555와 같이 연산이 아닌 단순히 이어붙인 경우는 따로 미리 포함시킨다. 첫번째 for문은 1~8개를 차례대로 고려하는 것이다. (최솟값을 찾는 것이므로 작은 수 부터) 두번째 for문을 이해하기 위해서는 아래 예시를 이해해야 한다. [3개 경우] 1개 리스트 원소 (+, -, *, //) 2개 리스.. 2022. 1. 17. [알고리즘] 다이나믹 프로그래밍이란? 다이나믹 프로그래밍은 큰 문제를 작은 문제로 쪼개어 해결하는 것을 말한다. 분할정복과 다른 점은 쪼개진 작은 문제가 여러 곳에서 중복적으로 발생한다는 점이다. 따라서 같은 문제를 중복 계산하지 않고 솔루션을 공유하여 효율화하는 것이 중요하다. Dynamic Programming 알고리즘 조건 1) problem이 sub-problem으로 나누어 질 때 2) 각 sub-problem의 solution을 통해 상위 problem의 솔루션을 구할 수 있을 때 3) sub-problem들이 중복되며, 그 문제의 솔루션이 같을 때 → memoizaion 위 세 가지 조건을 충족하는 문제는 dynamic programming으로 해결할 수 있으며, 대표적인 예시로 피보나치 수열이 있다. Top-down (재귀함수).. 2022. 1. 16. [Computer Architecture] 패리티 코드 , 해밍 코드 패리티 코드와 해밍코드는 통신 과정에서 오류가 생기는 것을 검출 및 수정하기 위한 코드이다. 패리티 코드는 오류 검출만 가능하고 해밍 코드는 오류 검출과 수정 모두 가능하다. 패리티 코드(Parity Code) 패리티 비트 = 가장 끝 1비트 하나의 문자 또는 수는 8비트로 표현된다. 8비트는 ASCII Code(7비트)와 Parity Code(1비트)로 구성되어 있다. 패리티 비트의 위치는 가장 끝에 있다. 패리티 비트는 오류를 검출하기 위해 존재한다. 홀수 패리티: 1의 개수가 홀수개가 되도록 패리티 비트를 설정한다. 짝수 패리티: 1의 개수가 짝수개가 되도록 패리티 비트를 설정한다. ex) A(65) : 1000001 + 패리티 비트 홀수 패리티: 1000001+1 짝수 패리티: 1000001 + .. 2022. 1. 14. [Computer Architecture] 고정 소수점 , 부동 소수점 컴퓨터에서 실수를 표현하는 두 가지 방법 고정 소수점 부동 소수점 고정 소수점 (Fixed Point) 소수점이 찍힐 위치를 고정해두고 소수를 표현한다. ex) -3.2134 부호(1비트) + 정수부(15비트) + 소수부(16비트) 부동 소수점 (Floating Point) 지수값으로 소수점을 움직이는 방식을 활용하여 실수를 표현한다. (소수점 위치 고정 안 함) 부호(1비트) + 지수부(8비트) + 가수부(23비트) · 가수: 실제값 표현 · 지수: 크기를 표현. 소수점이 어디 찍힐지 나타냄 부동 소수점 변환 과정 부호부(sign) 부호가 음이면 1, 양이면 0으로 가장 앞자리 부호부 1비트를 채운다. 가수부(mantissa) 가수의 절댓값을 2진수로 변환한다. (참고) 소수점 왼쪽에 1 하나가 남도록.. 2022. 1. 14. 이전 1 ··· 8 9 10 11 12 13 14 ··· 39 다음 728x90 반응형