본문 바로가기
728x90
반응형

전체 글261

[Python] 고대 문명 유적 탐사: 삼성SW역량테스트 2024 상반기 오전 1번 고대 문명 유적 탐사: 삼성SW역량테스트 2024 상반기 오전 1번Information자료구조: 2차원 배열, 큐(queue)알고리즘: BFS, 행렬 돌리기 테크닉, 정렬Setup(5, 5) 행렬을 `box`라고 이름 지었다. 전역변수로 선언함.(1) 탐사 진행: `(row, col)`을 기준으로 2차원 (3, 3) 배열을 90도 회전시킬 함수가 필요할 것 같다. 수험자 배려인지 행렬의 가장자리에서는 회전을 하지 않는다. 그러니가 (4번의 회전) x (9개의 회전축) = 36번 탐색하면 된다.(2) 유물 획득: `box[i][j]`마다 같은 숫자가 있는지 BFS로 탐색한다. 그중에서 조각이 3개 이상인 경우에만 유물을 획득한다. BFS 함수 마지막에 유물 조각의 개수도 담고 있어야 할 것 같다. 그리고 .. 2024. 10. 13.
Multiple Linear Regression (1) - Modeling Multiple Linear Regression (다중선형회귀)Setupresponse variable $y$가 $k$개의 input variable $x_1, x_2, \dots, x_k$의 함수로 모델링한다고 하자. 즉\[ y_i = \beta_0 + \beta_1 x_{1i} + \cdots + \beta_k x_{ki} + \epsilon_i \] coefficient $\beta_0, \beta_1, \dots, \beta_k$는 unknown prameter이고 $\epsilon_i$는 $N(0, \sigma^2)$를 따르는 error term이다. $k=1$인 경우에는 이전에 설명한 단순선형회귀(simple linear regression)이라 한다.  $\mathbf{x} = (x_1, x.. 2024. 10. 12.
[정수론] 합동 (Congruence) 합동 (Congruence)합동 관계 (congruence relation)$m$에 대하여 $m \mid (a - b)$인 경우 $a \equiv b \pmod{m}$으로 표기하고, "법(modulo) $m$에 관한 합동관계"라고 한다. 영어로는 congruence relation modulo $m$ 이다.※ LaTeX으로 합동을 표기할 때는 \equiv 를 사용하고, modulo는 \mod{m} 또는 \pmod{m} 를 사용한다.  다음 세 문장은 동치이다.$a \equiv b \pmod{m}$$a = b + mt$인 정수 $t$가 존재한다.$a = mq_1 + r$이고 $b = mq_2 + r$를 만족하는 정수 $q_1, q_2, r$가 존재한다.그리고 다음이 성립한다.$a \equiv a \pmod.. 2024. 10. 5.
[Python] 코드트리 투어: 삼성SW역량테스트 2024 상반기 오전 2번 코드트리 투어: 삼성SW역량테스트 2024 상반기 오전 2번 Information자료구조: 그래프, 힙(우선순위 큐)알고리즘: 다익스트라Query이 문제는 다양한 쿼리가 인풋으로 들어온다.그래프를 만드는 쿼리 빼고 4개의 쿼리에 대해 처리해야한다.(1) 랜드 건설: 가중치 그래프를 만드는 쿼리이다. 맨 처음 인풋으로만 들어온다.(2) 여행 상품 생성: 현재 출발지 기준으로 매출, 도착지 정보를 바탕으로 수익을 계산한다.(3) 여행 상품 취소: 특정 상품 id가 (2)로 생성되어있다면, 취소한다.(4) 최적 상품 판매: 수익이 가장 큰 상품을 판매하고, 그러한 상품이 없다면 -1을 출력(5) 상품 출발지 변경: 출발지를 새로운 출발지로 변경한다. (2)에서 생성된 정보 업데이트가 필요하다.Setup필요한 .. 2024. 9. 21.
[Python] 루돌프의 반란: 삼성SW역량테스트 2023 하반기 오후 1번 루돌프의 반란: 삼성SW역량테스트 2023 하반기, 오후 1번 해설/힌트 없이 채점 테스트 케이스만 보고 3시간 30분 걸렸다.진짜 시뮬레이션 구현이 복잡했다특히 산타끼리의 '상호작용'을 for-loop으로 구했다가 while로 고쳤다 오답이 나는 케이스1. 루돌프가 움직일 때산타를 찾아가는 우선순위가 제대로 되어있는가?산타와 충돌했을 때, 산타가 밀리는 방향이 바뀌진 않았는가? (바뀌면 안된다)2. 산타(들)가 움직일 때상우하좌 순서를 지켰는가?루돌프와 가까워지지 않으면 정지하는가?루돌프와 충돌 후 다른 산타들과 '상호작용'이 제대로 구현이 되었는가?루돌프와 충돌 후 제자리로 돌아올 때에도 상호작용을 하고 있는가? (하면 안된다)상호작용이 끝난 후, 올바르게 위치가 업데이트 되었는가? (덮어쓰기 순서 .. 2024. 9. 20.
[정수론] 디오판토스 방정식 (Diophantine equation) 디오판토스 방정식 ($ax + by = c$)정수를 계수로 갖는 방정식의 정수해를 구하는 문제를 디오판토스 방정식 (또는 부정방정식)이라 한다.요즘에도 그런지 모르겠는데, 필자가 고등학생일때 수학의 정석에 간단한 경우(상황이 특수한 경우)에 소개되어있다.정수론에서 보다 일반적인 방법으로 이 방정식을 푸는 방법을 소개한다.$a, b, c \in \mathbb{Z}$이고 (적어도 하나는 $0$이 아니다.) $d=\gcd(a, b)$라 하자. 이 때,(1) 방정식 $ax + by = c$의 해가 존재하기 위한 필요충분조건은 $d \mid c$ 이다.(2) $x_0, y_0$가 $ax + by = c$의 특수해(particular solution)일 때, 일반해는 다음과 같다.\[ x = x_0 + \bigg(.. 2024. 8. 19.
728x90
반응형