filter 함수 filter(조건 함수, iterable 객체) filter 함수는 iterator 중에서 조건 함수를 만족하는 값만을 filter 객체에 담아 반환한다. filter 객체 역시 iterator이므로, 리스트 등 다른 자료형으로 변환하여 사용하면 된다. 유용성 ‘아… 리스트에서 최소값을 찾고 싶은데, N보다 큰 값이어야...
문제 : https://www.acmicpc.net/problem/14500 Don’t Go Show의 흔적들.. 문제 접근 테트로미노 문제에서 가장 골치 아픈것은 바로 T자이다. 대부분의 도형은 DFS를 통해 구현이 가능하지만, T자만큼은 구현이 불가능하기 때문이다. T자를 구현하기 위해서는 DFS를 돌 때, 현재 위치를 가리키는 커서를...
문제 : https://www.acmicpc.net/problem/1476 접근 문제자체는 브루트 포스로 풀면되는 아주 쉬운 문제이지만, 다른 사람의 코드를 읽다가 미처 몰랐던 접근법을 발견했다. 바로 answer나 cnt 변수를 따로 만들지 않고 나머지 연산(%)를 이용하여 입력 받은 값과 일치할 때까지 for문을 도는 것이다. 코...
문제 : https://www.acmicpc.net/problem/17404 접근 1149. RGB거리와 동일한 유형이나, N번 집과 1번집의 색이 달라야한다는 규칙이 추가되었다. 관건은 1번 집의 색을 기억하는 것이다. N번 집을 칠할 때, 1번 집에서 칠했던 색은 피해야한다. 이를 위해서는 1번 집에 R을 칠한 경우, G를 칠한 ...
강의 주소 : https://www.boostcourse.org/ai251/lecture/540312 Linear Equation(선형 방정식) n개의 변수(x)로 이루어진 선형방정식은 위와 같이 쓸 수 있다. 여기서 b는 선형방정식의 결과에 해당하는 상수, a는 계수이다. 선형방정식의 벡터 표현 선형방정식은 계수를 성분으...
문제 : https://www.acmicpc.net/problem/2133 3x12 벽을 타일로 채운 예시 사실 구현자체는 어렵지 않지만, 타일을 채우는 방법이 독특해서 따로 정리하기로 했다. 아마 문제 아래 주어지는 힌트가 없었다면 한참 헤맸을 것 같다. 풀이 타일을 배치하는 경우의 수는 다음과 같다. 즉...
파이썬 리스트 복사의 함정 list1의 값을 변경해야하는데 기존 list1의 값도 따로 저장해두고 싶다면, 리스트를 복사한 새로운 리스트를 만들어야 한다. list1을 그대로 복사한 list2를 만들고 싶다면 어떻게 해야할까? 그냥 새로운 변수에 할당하면? list1 = [1, 2, 3, 4] list2 = list1 list1[0]...
접근 다이나믹 테이블 정의 입력받은 스티커의 리스트가 곧 다이나믹 테이블이 된다. i행 j열의 값은 n = j일 때 i행 j열의 스티커를 떼어내면서 최대로 얻을 수 있는 점수를 말한다. 설명 아래와 같은 스티커 배열이 있다고 하자. (안의 값은 점수이다) i행 0열 다른 스티커를 떼어낼 수 없으므...
문제 : https://www.acmicpc.net/problem/2225 접근 우선 직접 경우의 수를 구하는 것을 통해 N과 K의 관계를 구해야한다. 가령 K=4의 경우의 수를 구하고 싶다면 N=0일 땐 0,0,0,0 1가지 N=1일 땐 1,0,0,0을 자리 바꾸어 4가지 N=2일 땐 2,0,0,0을 자리 바꾸어 4가지 + 1,1...
문제 : https://www.acmicpc.net/problem/14002 접근 11503. 가장 긴 증가하는 부분 수열에서 길이 외에 수열을 추가로 출력해야하는 문제이다. 길이를 구하는 과정까지는 동일하지만, 이후 구해진 길이를 바탕으로 수열을 구하는 코드를 추가하는 쪽으로 접근했다. 구현 과정 ※ ...