본문 바로가기
반응형

전체 글330

[알고리즘] 고속 푸리에 변환(FFT) 알고리즘 정리 (python) ※ 시작하기 전내가 찾는 고속 푸리에 변환(FFT)은 알고리즘 문제 풀이를 해결하기 위한 FFT인데, 찾아보는 자료마다 이것 저것 푸리에 변환에 대한 공식이 적혀있고, Numpy를 이용해서 FFT 그래프를 그리고 해석하는 등 데이터 분석에 필요한 FFT 구현을 위주로 설명이 되어 있었다.그런 FFT 그래프 구현 등은 다른 블로그 등에서 매우 잘 다룬 자료들이 많으므로 다루지 않을 거고, 내가 다룰 내용은 FFT 알고리즘을 구현하여 문제를 풀 수 있도록 (백준 등) 고속 푸리에 변환 (FFT)과 고속 푸리에 역변환 (IFFT)를 내용으로 작성함 (코드 첨부)고속 푸리에 변환(FFT)📌고속 푸리에 변환?고속 푸리에 변환(FFT)란 이산 푸리에 변환(DFT)을 빠르게 진행하기 위해 만들어낸 알고리즘DFT는 .. 2023. 4. 30.
[Python] 알고리즘 풀이 시 유용한 함수 사용 팁 (map, join 등) 1. 2차원 배열에서 최대값 & 최소값 & 합 구하기 (Map 함수 활용) - map 함수의 기본 구성은 map(function,iterable) - function 부분에 다른 기능을 추가해서 2차원 리스트에 적용 할 수 있음. # 2차원 배열에서 반복문을 사용하지 않고 특정 값 구하기 x = [[1,0,-30,6,5],[3,4,7,8,1],[3,2,6,7,1],[-1,2,3,6,8],[99,1,2,3,6,8]] print(max(map(max, x))) # 최대값 99 print(min(map(min, x))) # 최소값 -30 print(min(map(max, x))) # 내부 배열의 최대 값들 중에서 가장 작은 값 6 print(max(map(min, x))) # 내부 배열의 최소 값들 중에서 가.. 2023. 4. 29.
[백준 14890] 경사로(python) https://www.acmicpc.net/problem/14890 14890번: 경사로 첫째 줄에 N (2 ≤ N ≤ 100)과 L (1 ≤ L ≤ N)이 주어진다. 둘째 줄부터 N개의 줄에 지도가 주어진다. 각 칸의 높이는 10보다 작거나 같은 자연수이다. www.acmicpc.net 경사로 문제 요구 조건에 맞게 경사로를 놓아서 지나갈 수 있는지 횟수 체크하는 구현 문제 📌 문제 접근 포인트 1. 문제 요구사항을 잘 따져주자. 요구사항이 많아서 헷갈릴 수 있다. 2. 가로 방향과 세로 방향을 모두 따져줘야 하고, 가로와 세로 둘 다 같은 방식으로 탐색을 하면 되니 함수를 만들어줘서 구성해 보자. 3. 요구 조건에 맞게 차이가 1보다 큰 경우와 왼쪽, 오른쪽이 더 클 경우로 나눠서, 각각 경사로를 설.. 2023. 4. 29.
[백준 21610] 마법사 상어와 비바라기 (python) https://www.acmicpc.net/problem/21610 21610번: 마법사 상어와 비바라기 마법사 상어는 파이어볼, 토네이도, 파이어스톰, 물복사버그 마법을 할 수 있다. 오늘 새로 배운 마법은 비바라기이다. 비바라기를 시전하면 하늘에 비구름을 만들 수 있다. 오늘은 비바라기 www.acmicpc.net 마법사 상어와 비바라기 문제 주어진 많은 요구사항을 따라 구현하는 문제 📌문제 접근 포인트 1. 조건이 생각보다 많다. 조건을 빼먹지 않도록 하나하나 구성해 주자. 2. 방향 d와 거리 s에 대해서 각각 체크를 해줄 수 있도록 for문을 이용해서 하나씩 탐색해 나가자 3. 중간에 visited를 사용하지 않고 리스트를 하나 더 만들어서 거기다 현재 좌표를 넣어 나중에 체크하는 식으로 구성하.. 2023. 4. 29.
[백준 2448] 별 찍기 - 11 (python) https://www.acmicpc.net/problem/2448 2448번: 별 찍기 - 11첫째 줄에 N이 주어진다. N은 항상 3×2k 수이다. (3, 6, 12, 24, 48, ...) (0 ≤ k ≤ 10, k는 정수)www.acmicpc.net별 찍기 - 11 문제별을 규칙에 맞게 찍도록 구현하는 문제재귀를 활용하여 해결할 수 있었다.📌문제 접근 포인트1. 별을 찍어보자. 별은 가운데가 비어있는 삼각형 모양으로 찍혀나간다.2. 3*2^n꼴로 숫자가 주어진다. 즉 n=3 일 때 해당하는 모양을 만들어주고 n/2를 진행하면서 재귀를 통해 탐색해 주자.3. 왼쪽 오른쪽 공백 구성에 맞게 출력해 주면 완성⚙️ 내가 푼 정답 코드 1# 위와 아래로 나눠서 별을 늘려나가는 방식def star(n): .. 2023. 4. 27.
[JavaScript] DOM 조작 및 이벤트 처리 정리 DOM(Document Object Model) - 문서의 구조화된 표현 제공 - HTML 문서를 구조화하여 각 요소를 객체 취급 - DOM의 구조(문서를 논리 트리로 표현) - DOM은 HTML 요소, 속 텍스트 등 모든 것을 Node로 구성 Window Object - DOM을 표현하는 창으로 가장 최상위의 객체를 의미 Document Object - 브라우저가 불러온 웹 페이지 - document는 window의 속성 선택 관련 메서드 // 제공한 선택자와 일치하는 요소 1개 선택 // 제공한 CSS Selector를 만족하는 첫번쨰 요소를 반환(없으면 null) document.querySelector(selector) // 제공한 선택자와 일치하는 여러 요소 선택 // 제공한 CSS Select.. 2023. 4. 27.
반응형