전체 글 160

[Python/백준] 10989 수정렬3 - 메모리초과.. dict를 활용.

문제 : www.acmicpc.net/problem/10989 아무 생각없이 리스트를 활용하여 정렬하는 방식으로 풀면 아래와 같다. import sys n = int(sys.stdin.readline()) num_list = [] for _ in range(n): num_list.append(int(sys.stdin.readline())) sorted_list = sorted(num_list) for i in sorted_list: print(i) 이러면 메모리초과 오류가 발생한다. 리스트가 길어지면, append에서 메모리를 많이 사용하기 때문. 다른 블로그 글에서는 계수정렬을 하거나, 리스트를 미리 만들어놓고 값을 추가하는 방식으로 문제를 풀었다. 그런데 이런 방식은 별로 pythonic 하지 않다고..

알고리즘 2024.01.24

5-1. 광저우 4일차 (남월왕궁박물관)

4일차 일정표 어제는 루이싱 커피를 마셨지만, 오늘은 헤이티 한잔과 함께 시작! 크림치즈가 안 올라가면, 뭔가 서운하다. 더운 날씨에 차가운 음료를 파는 곳이 몇 군데 없어서, 여기서 시원한 음료를 마시니 열기가 확 내려가면서 기분이 좋아진다ㅋㅋㅋ 중국은 참 신기한게, 더운 날씨에도 꼭 뜨거운 차와 음료를 마신다. 얼음이 들어간 아이스 음료는 거의 없다;; 그리고 이동해서 가볍게 점심을 먹는다. 창펀(肠粉)을 먹으러 갔다. (현지인에게 추천받은 곳) 조금 있다가 밥을 먹어야해서, 간단하게 시켰다. 국물 한 개랑 창펀 한 개. 창펀은 쌀가루와 타피오카를 섞은 반죽을 넓게 부친 뒤에, 속재료를 넣고 돌돌 말아서 진한 간장소스를 뿌려서 먹는 요리다. 약간 짠 느낌도 있긴 하지만, 날씨가 하두 더워서 땀을 많이..

4. 광저우 3일차(포산, 양원, 조묘, 링난텐디, 광저우, 대불고사, 베이징루)

3일차 일정표 숙소에서 느지막히 일어나서 점심을 먹으러, 맛있다는 동네 식당으로 찾아갔다. 그 전에 보이는 루이싱 커피에서 커피 한잔! 추천받은 코코넛밀크 커피로 샀다. 너무 더워서 아이스로 선택했다. 아이스 음료를 절대 안 마시는 중국이지만, 커피집은 아이스 음료를 팔더라! 미국에서 상폐된 루이싱 커피.. 그런데 영어로는 luckin 커피라고 되어있어서, 현지인들은 루킨커피라고 읽더라 ㅋㅋ 이름이 왜 다르지? 마스코트가 같은 것을 보면, 같은 회사인게 맞는데 ㅋㅋ 택시를 타고, 광동성 요리를 파는 작은 음식점으로 갔다. 샤오홍수에서 좋은 평가를 받고 있다고 해서 갔는데, 음식은 진짜 맛있었다. 그런데 에어컨이 없어서 너무 찜통이었다. 전반적으로 음식들이 깔끔하고 맛있었다. 하얀 건 돼지갈비에 양념을 한..

3. 광저우 2일차(둥관, 가원, 마사지, 포산)

2일차 일정표 아침에 일어나서 창 밖을 쳐다보니 보이는 아파트 전경..ㄷㄷ 정말 아파트가 못 생겨서 흉물같은 느낌이다. 중국스럽다 친구가 아파트 상가에 미용실이 있는데, 머리 감기 귀찮으니 거기 가서 머리를 감고 밖에 나가자고 했다. 1만원에 머리도 3번이나 샴푸해주고, 목 등 다리 팔까지 마사지를 해준다 ㅋㅋㅋ 중국 미용실도 한국처럼 인턴하는 애들이 노동력 착취를 당하는 구조였다. 가장 힘든 마사지 + 샴푸를 하루 종일 하는데, 디자이너가 되기 위해서는 최소 시급만 받으면서 일한다고 한다. 대충 한 달에 30만원쯤 받는다고 하던데.. ㄷㄷ 머리 감고 말리면서, 커트할꺼냐고 물어봤는데.. 별로 중국스타일로 자르기는 싫어서 괜찮다고 했다. 그리고 점심으로 딤섬먹으러 갔다. 엄청 크고, 손님도 엄청 많다. ..

2. 광저우 1일차(출국, 둥관, 신광명야시장)

1일차 일정표 중국 비자를 받고 나니, 특별히 준비할게 없었다. 친구가 둥관(동관)에 살기 때문에, 친구 집에 놀러가볼 겸 첫 날은 광저우 바이윈 공항에 도착하자마자 둥관으로 가기로 친구랑 이야기했었다. 탄 비행기는 중국남방항공. 비행기 값은 43만원정도. 음.. 생각보다 작다. A320이라 (3, 3) 구조로 된 좌석 구조였다. 그런데 의외로 다리 간격은 넓어서 괜찮았다. 비행기에 모니터가 없어서, 영화나 드라마도 못 보고, 내 현위치도 파악할 수 없었다.. 하지만, 부드러운 담요를 줘서 기분 좋게 둘둘 말고, 아이패드로 넷플릭스 보니까 순식간에 광저우 도착! 3시간 30분밖에 안 걸려서 의외로 빨리 도착했당. 비행기에서 내리자마자 느껴지는 열기 ㄷㄷㄷㄷ 현지온도 38도의 위엄을 느끼고 말았다. 와....

18-6. 고유기저와 좌표계

(1) 고유기저 변환 T는 Rn -> Rn으로 사상하는 변환이고, T(x) = Ax로 나타낼 수 있다. 만약, n개의 선형독립인 고유벡터로 이뤄진 행렬 A가 있다고 가정해보자. A가 {v1, v2, ..., vn}의 벡터로 이뤄져있으며, 이러한 고유기저벡터 집합을 B라고 해보자. 각 고유벡터를 변환 T해보자. T(v1) = Av1 = λ1v1 + 0v2 + ... + 0vn (λ1은 고유값) T(v2) = Av2 = 0v1 + λ2v2 + ... + 0vn ... T(vn) = Av1 = 0v1 + 0v2 + ... + λnvn 앞에서 했던 기저변환에 대한 내용을 살짝 정리해보면, x에 A를 곱해주면 T(x) x에 C-1을 곱해주면 [x]B [x]B에 C를 곱해주면 x [x]B에 D를 곱해주면 [T(x)..

1. 광저우 여행개요 (일정, 비용, 관광 비자 더블)

0. 들어가기 앞서서 : 이 기록은 타인이 여행할 때 참고하면 좋을 것 같아서 포스팅하는 것이기는 하지만, 내 개인적인 기록과 기억을 위한 것이기 때문에 다소 불친절한 면이 있을 수도? 모든 것을 다 까먹었을 미래의 나를 위해서 최대한 자세히 적어보려 한다. 그리고 이번에 대중교통을 거의 타지 않고, 차로 다녔기 때문에 대중교통을 활용하려는 사람은 참고하기에 부적절할 수도 있다. 하지만 중국 택시비가 워낙 싸기 때문에, 택시로 시내에서 이동하는 것도 고려해봄직하다. (1번에 대충 10위안) 인원 : 나, 광저우 사는 중국인 친구 (2인) 1. 여행기간 및 일정 : 2023.6.3 ~ 2023.6.7 (1) 6.3 출국, 둥관, 신광명야시장(新光明夜市), 康源手功夫马(발 마사지) (2) 6.4 : 둥관 구..

18-5. 3x3 행렬의 고유벡터와 고유공간

(1) 3x3행렬의 고유벡터와 고유공간 앞에서 3x3 행렬의 고유값을 구했다. 이어서 3x3 행렬의 고유벡터와 고유공간을 구해보자. 구하는 방식은 2x2에서 했던 방식과 동일하다. 행렬의 고유값을 구하고(Av=λv), 고유값을 활용해서 (λIn-A)v = 0을 만족하는 v가 고유벡터와 고유공간을 구할 수 있다. A = [ -1 2 2; 2 2 -1; 2 -1 2] 고유값 λ=3 or λ=-3. (1) λ=3 (λIn - A)v = [4 -2 -2; -2 1 1; -2 1 1]v = 0 기약행사다리꼴로 나타내도 위 식을 만족시키는 v값은 같다. [4 -2 -2; 0 0 0; 0 0 0]v = 0 v = [v1, v2, v3] 4v1 -2v2 -2v3 = 0 v2 = a, v3 = b라고 하면, v1 = 1..

18-5. 3x3 행렬의 고유값

(1) 3x3 행렬의 고유값 사실 3x3 행렬도 2x2보다 계산과정이 복잡하기만 할 뿐, 고유값을 구하는 과정은 동일하다. λ는 A의 고유값이면, Av = λv를 만족하는 영벡터가 아닌 v가 있다. (필요충분조건) Av = λv 이면, det(λIn - A) = 0 을 만족한다. (필요충분조건) A = [ -1 2 2 ; 2 2 -1; 2 -1 2] 이면, λIn - A = [λ+1 -2 -2; -2 λ-2 1; -2 1 λ-2] 이다. 사루스의 법칙을 활용하여, 판별식을 계산해보자. 대각선 - 대각선으로 구하면 된다. (λ+1)(λ-2)(λ-2) + 4 + 4 - 4(λ-2) - (λ+1) - 4(λ-2) = 0 λ³ - 3λ² - 9λ + 27 =0 λ²(λ - 3) - 9(λ - 3) = 0 (λ²..

18-4. 고유벡터와 고유공간

(1) 고유벡터와 고유공간 앞의 예제에 이어서, 고유벡터와 고유공간을 구해보자. A = [1 2; 4 3]이었고, λ가 A의 고유값이라면 det(λIn - A) = 0의 필요충분조건이라고 했다. 그래서, λ = 5, -1 이라는 값을 앞에서 구해봤었다. Av = λv 이기 때문에, 0 = (λIn - A)v 가 성립하고, 어떠한 고유값 λ에 대해서 고유공간 Eλ = N(λIn - A) 와 같이 영공간의 형태로 표현할 수 있다. 즉, 고유공간은 영공간을 만드는 (λIn - A)가 된다. λ = 5 일 때, 영공간을 활용하여 고유공간을 구해보자. E5 = N([4 -2; -4 2]) [4 -2; -4 2]v = 0 이므로, 기약행사다리꼴 행렬을 활용하여 왼쪽 행렬을 간단하게 해보자. [4 -2; -4 2] ..