Loading [MathJax]/jax/output/CommonHTML/jax.js

전체 글

https://www.acmicpc.net/problem/20923 20923번: 숫자 할리갈리 게임 첫째 줄에는 도도와 수연이가 가지는 카드의 개수 N(1N30000)과 게임 진행 횟수 M(1M2500000)이 주어진다. 둘째 줄부터 N개의 줄에는 띄어쓰기로 구분하여 도도와 수연 www.acmicpc.net 처음에 문제가 이해가 안되서 한참 보다가 질문에서 두 사람이 낸 카드의 총합이 M이라는 걸 보고 아.. 그제야 이해했다. 이해한 후에는 그렇게 어렵지 않았는데, 처음에 바보같이 그라운드의 카드를 종을 친 사람의 덱으로 가져올 때 그라운드를 스택이라고 생각하고 풀어서 시간초과가 났다. 아니 사실 pypy로 돌렸을 땐 틀렸습니다..
https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%ED%94%84%EB%A0%88%EC%9E%84%EC%9B%8C%ED%81%AC_renew/dashboard 자바 스프링 프레임워크(renew ver.) - 신입 프로그래머를 위한 강좌 - 인프런 | 강의 스프링 프레임워크 기본부터 실전 사용법까지! 충실하고 폭넓은 설명과 예제를 통해 현장에 바로 투입되어 활약하는 개발자로 거듭나세요., 자바 스프링 프레임워크로 내 개발자 커리어에 봄이 www.inflearn.com 섹션 5. 연결 23강 JDBC 23-1 기본 SQL 테이블 생성 및 삭제 CREATE TABLE member ( memId VARCHAR2(10) CONSTRAINT memId_pk..
https://www.acmicpc.net/problem/18115 18115번: 카드 놓기 수현이는 카드 기술을 연습하고 있다. 수현이의 손에 들린 카드를 하나씩 내려놓아 바닥에 쌓으려고 한다. 수현이가 쓸 수 있는 기술은 다음 3가지다. 제일 위의 카드 1장을 바닥에 내려놓는다. www.acmicpc.net i번째로 카드를 내려 놓았을 때 내려 놓은 카드는 N-i 카드 이므로 원래 가지고 있던 카드의 인덱스 0~N을 덱에 넣어놓은 후, 인덱스를 하나씩 빼면서 정답 배열에 카드를 넣어주었다. 1인 경우에는 덱의 제일 앞의 인덱스에 카드를 넣어주면 되고 2인 경우에는 덱의 앞에서 두번째 인덱스에 넣어주어야 하므로 맨 앞의 인덱스는 따로 저장해놓고 두번째 인덱스를 pop한 후, 다시 첫번째 인덱스를 앞에 ..
https://www.acmicpc.net/problem/3078 3078번: 좋은 친구 첫째 줄에 N과 K가 주어진다. (3 ≤ N ≤ 300,000, 1 ≤ K ≤ N) 다음 N개 줄에는 상근이네 반 학생의 이름이 성적순으로 주어진다. 이름은 알파벳 대문자로 이루어져 있고, 2글자 ~ 20글자이다. www.acmicpc.net 슬라이딩 윈도우를 활용한다고 하여도.. 같은 길이의 문자열을 찾으려면 K개의 범위를 다 돌아봐야 하니까 시간초과가 날 것 같은데... 하는 생각에 오래 고민하다가 슬라이딩 윈도우의 장점을 사용하기 위한 방법을 생각해보았다. 바로 문자열의 길이를 인덱스로 하는 배열을 따로 만든 후에 같은 길이의 문자가 윈도우 안에 있는경우 그걸 인덱스로 한 값을 +1 해주는 방식이었다. 이렇게 ..
https://www.acmicpc.net/problem/2304 2304번: 창고 다각형 첫 줄에는 기둥의 개수를 나타내는 정수 N이 주어진다. N은 1 이상 1,000 이하이다. 그 다음 N 개의 줄에는 각 줄에 각 기둥의 왼쪽 면의 위치를 나타내는 정수 L과 높이를 나타내는 정수 H가 한 개의 www.acmicpc.net 아... 정말 어려웠다... 사실 어려운 것보다 내가 너무 어렵게 생각했던 것 같다. 처음에는 주어진 입력을 각각 원소로 해서 2차 배열을 만들어 저장하고 maxHeight를 찾고 그걸 기준으로 어떻게 잘 나누어서 해보자.. 라고 접근을 했는데 이 방식도 계속 파고 들어가면 풀 수 있을 것 같긴 하나.. 이렇게 푸는 게 과연 맞는 건가 하는 의문이 계속 들었다. 그리고 나서는 아,..
https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%ED%94%84%EB%A0%88%EC%9E%84%EC%9B%8C%ED%81%AC_renew/dashboard 자바 스프링 프레임워크(renew ver.) - 신입 프로그래머를 위한 강좌 - 인프런 | 강의 스프링 프레임워크 기본부터 실전 사용법까지! 충실하고 폭넓은 설명과 예제를 통해 현장에 바로 투입되어 활약하는 개발자로 거듭나세요., 자바 스프링 프레임워크로 내 개발자 커리어에 봄이 www.inflearn.com 섹션 5. 연결 22강 Database 22-1 오라클 다운로드 오라클 계정 생성 후 컴퓨터에 맞는 버전으로 다운로드 http://www.oracle.com/technetwork/da..
https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%ED%94%84%EB%A0%88%EC%9E%84%EC%9B%8C%ED%81%AC_renew/dashboard 자바 스프링 프레임워크(renew ver.) - 신입 프로그래머를 위한 강좌 - 인프런 | 강의 스프링 프레임워크 기본부터 실전 사용법까지! 충실하고 폭넓은 설명과 예제를 통해 현장에 바로 투입되어 활약하는 개발자로 거듭나세요., 자바 스프링 프레임워크로 내 개발자 커리어에 봄이 www.inflearn.com 섹션 5. 연결 21강 리다이렉트, 인터셉트 21-1 리다이렉트(redirect) 지금의 페이지에서 특정 페이지로 전환하는 기능 @RequestMapping(value = "/modi..
https://www.acmicpc.net/problem/2437 2437번: 저울 하나의 양팔 저울을 이용하여 물건의 무게를 측정하려고 한다. 이 저울의 양 팔의 끝에는 물건이나 추를 올려놓는 접시가 달려 있고, 양팔의 길이는 같다. 또한, 저울의 한쪽에는 저울추들만 놓 www.acmicpc.net 머리가 안돌아가서.. 도저히 풀 수 있는 방법이 생각나지를 않았다. 예시의 답이 1+1+2+3+6+7 = 20 보다 하나 더 큰 수라는 건 알았지만, 그리디를 이용해서 어떤 공식을 찾을 수 있을 지 생각이 나질 않았다. 그래서 질문을 좀 검색해 본 결과.. 현재 뽑은 숫자가 지금까지 더한 숫자 보다 작다면 그 수는 지금 까지의 더한 수(SUM) 부터 뽑은 수를 더한 값(SUM + ARR[i]) 까지 만들 수..
https://www.acmicpc.net/problem/1377 1377번: 버블 소트 첫째 줄에 N이 주어진다. N은 500,000보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에 A[1]부터 A[N]까지 하나씩 주어진다. A에 들어있는 수는 1,000,000보다 작거나 같은 자연수 또는 0이다. www.acmicpc.net 처음엔 문제에 나와있는 코드를 그대로 구현해봤는데, 시간초과가 났다. 버블정렬은 O(n^2)의 시간복잡도를 가지기 때문이다. import sys N = int(sys.stdin.readline()) A = [-1] for _ in range(N): A.append(int(sys.stdin.readline())) for i in range(1, N+2): change = Fa..
https://www.acmicpc.net/problem/11582 11582번: 치킨 TOP N 인하대 주변 치킨칩의 맛의 정도를 측정해 수치화하는 동아리 C.T.P(Chicken Tastes Perfect)의 회장 민호는 치킨집의 맛의 수치를 감소하지 않는 순으로 정렬을 하고 싶었다. 하지만 치킨집이 너무 많 www.acmicpc.net 정렬의 중간 과정을 구하는 문제이다. 주어진 숫자의 수가 N, 현재 정렬을 하고 있는 사람이 k라고 했을 때 정렬되는 단위는 N//k이다. 따라서 N//k만큼의 길이로 배열을 나누어서 정렬한 후 출력해주었다. import sys N = int(sys.stdin.readline()) arr = list(map(int, sys.stdin.readline().split()..