본문 바로가기

전체 글243

[백준✨] 2042번 <구간합 구하기> / JAVA 문제풀이 / 인덱스 트리 해답) package 구간합구하기; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; public class Main { static long []numbers; static int N, M, K; public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String[] line = br.readLine().split(" "); N = Integer.parseInt(.. 2020. 8. 15.
[알고리즘] 인덱스 트리란? (IndexedTree ) / 코딩테스트 인덱스 트리 /Java 구현/ ⭐ 인덱스트리란? ⭐ 리프 노드에 내가 쓸 값들을 저장해놓고, 부모들에는 해당 노드의 합들로 된 노드들을 만들어 구현해둔 트리입니다. 쉽게 말하자면 제일 밑 노드들은 값들, 그 위에 부모 노드들에는 값들의 정보(보통 노드의 부분합)를 모아둔 트리! 예시를 보시는게 좋을 것입니다. 언제 쓰이는가? 👀 인덱스 트리는 언제 쓰일까요? 1. 부분합을 계속해서 구해야할 때, 2. 특정 인덱스의 변경 또한 계속 일어날 수 있을 때 이 두 조건이 만족할 때 주로 쓰입니다! * left - right = N 이라 가정 보통 구간 left ~ right 부분합을 구한다는 것은 left 부터 right 까지를 전부 더해야 하기에 O(N) 의 시간복잡도를 가집니다. 그래서 우리는 누적합 배열을 쓰죠! 누적합 배열에서 누적합.. 2020. 8. 13.
[백준✨] 3344번 < N-Queen > / Python 문제풀이 / 해답) N = int(input()) ''' 알고리즘의 출처 : https://en.wikipedia.org/wiki/Eight_queens_puzzle 위키 설명 읽고 그대로 코드로 옮겼습니다. The examples above can be obtained with the following formulas.[3] Let (i, j) be the square in column i and row j on the n × n chessboard, k an integer. One approach[3] is 1. If the remainder from dividing n by 6 is not 2 or 3 then the list is simply all even numbers followed by all odd .. 2020. 8. 7.
[백준] 11650번 . 좌표 정렬하기 ✨ / Python 문제풀이 / 함수형 프로그래밍 해답) # x, y 를 튜플형태로 입력받아 리스트로 만든다. => xys xys = [tuple(map(int, input().split())) for _ in range(int(input()))] # 튜플을 받아 원하는 포맷으로 바꿔준다. # 예) (1, 1) => "1 1" 로 바꿔준다. def toAnswerFormat(tup): x, y = tup return str(x) + " " + str(y) # xys 를 문제에 맞는 조건으로 정렬한다. xys = sorted(xys, key=lambda tu: (tu[0], tu[1])) # map(fun, xys) 을 통해 xys 의 모든 원소들을 맞는 포맷으로 바꿔주고, # "\n".join() 을 통해 줄바꿈으로 묶어준다. result = "\n"... 2020. 8. 5.
[Python] 파이썬 2차원 리스트 Slicing / 일부분 선택, 추출하기 ✨ 파이썬에서 1차원 리스트을 슬라이싱하는건 간단합니다. arr = "ABCDE" arr[0:3] = "ABC" 하지만 리스트가 2차원 이라면? 꽤나 골치아파지죠. numpy를 이용하면 되지만, numpy가 익숙하지 않은 저로서는 그냥 파이썬 문법을 이용합니다! 2차원 배열 Slicing 2차원 배열 을 순회하면서 특정 2차원 배열만 빼내어 보고싶을 때! 어떻게 해야할까요? 예시를 드릴테니 한번 맞춰보세요 ! 5 * 5 크기의 OX 판이 있습니다. [ "OXOOO", "XOXXO", "OOXOO", "XOOOX", "OXOXO", ] 이 맵의 일부분이 3 * 3 인 다음과 같은판과 일치하는지 확인하고 싶습니다. [ "OXO", "XOX", "OXO", ] 어떻게 하면 좋을까요? 답은 좀 더 보기 편한 리스트.. 2020. 8. 1.
[React🌌] React + Ant Design + TypeScript 적용하기! / antd 사용 Ant Design 중국에서 만든 웹, 앱 디자인 개발을 위한 프레임워크입니다! 저는 React 만 다뤄봐서 React 에 초점을 맞춰 설명하겠습니다! React 로 프론트 쪽 작업을 하다보면, 디자인이 필요한 경우가 생깁니다. 그런데 저희같은 (아마도 저만..) 그림 감수성이라고는 거리가 먼 사람들은 툴 없는 디자인이란 정말 높은 산과도 같죠. 코드 1000줄 쓰는 것 보다 레이아웃 잡고, 색 고르고 모양 신경쓰는게 더 어려울 수도 있습니다... 그런 저에게 Ant Design은 그저 사막에 내리는 단비 같은 존재 였습니다. 암튼 Ant Design 짱짱. 바로 사용법 들어갑니다. 사용법 0. React 사용 우선 기본적으로 react를 다룰 줄 아는 것을 기본으로 전제하고 설명하겠습니다. React .. 2020. 7. 30.
[개발일기] ⭐ 프로그래머스 100위 입성! ⭐ 드디어 프로그래머스 점수 순위 100위 안으로 입성했다! 사실 점수는 그냥 쌓이고 쌓이는 거라서 실력과는 무관하지만.... 많은 문제들을 접해봤고, 꾸준하게 해왔다는 것을 기념하며!! - 07.26 오전 3시 - 나는 UI, UX 에 영향을 많이 미치는 타입이라 백준보다 디자인이 이쁘게 잘 돼있는 프로그래머스로 더 많이 시작했던 것 같다. 문제 읽을 때도 뭔가 더 잘 읽히는 느낌? 이제는 백준, 프로그래머스, 알고스팟, 삼성SW 이렇게 들락날락하는데 솔직히 여전히 뭔가 프로그래머스 문제 풀 때가 더 재밌는 느낌이다. 지금까지는 이 단원 저 단원 안가리고 잡히는대로 문제를 풀어왔다면, 이번 기회로 부족하다고 느끼는 단원을 정리해보고, 그 부분에 대해서 더 집중적으로 공부해야겠다. @ 부족한 단원 @ - 트.. 2020. 7. 26.
[cmd/bat] cmd 프로그래밍 / 배치파일(.bat) 프로그래밍 / 윈도우 / 📟 CMD 명령어를 더 효율적으로 써보자! 코로나 때문에 집에서 공부를 많이 하다보니까 이런저런 명령어로 작업을 많이 하게 되더군요. 명령어를 한번에 실행하고 싶은 생각이 들어 찾아보다가 bat 파일을 프로그래밍 해보고 싶더군요! 생각보다 재밌고 간단해서 1시간만에 간단한 저만의 작업파일을 만들었습니다. 파일 소개 mywork.bat *메인파일 메인 파일입니다. 무슨 작업을 하고싶은지 결정해주는 파일이죠! 하고싶은 작업을 고르고 해당 작업을 해주는 파일을 실행합니다. quit.bat (1) 일정 시간 후에 PC를 종료시켜주는 것을 구현해보았습니다. 예약을 취소할 수도 있구요! powersaving.bat (2) 절전모드를 실행시키는 파일입니다! ⚡⚡ 윈도우는 위와 같은 명령어로 절전모드를 실행시킵니다~ 앞에.. 2020. 7. 23.