일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- 스마트팩토리
- Baekjoon
- softeer
- 힙큐
- JavaScript
- 현대
- 알고리즘
- 소프티어
- Algorithm
- 티스토리챌린지
- 자바
- cim
- 자바스크립트
- cs공부
- alogorithm
- 파이썬
- heapq
- boj
- Java
- re_lunchu
- 백준
- 토이프로젝트
- 프로그래머스
- 현대자동차
- 딥러닝
- 오블완
- programmers
- 탐욕법
- Python
- GAN
- Today
- Total
목록eaz_algorithm (89)
eaz_coding
문제두 개 더해서 0에 가장 가까운 값을 구해라. 문제 원본 https://www.acmicpc.net/problem/2467 풀이1. 두 값 중에 작은 값을 정해가면서 비교한다.2. 작은 값 이상의 값들에서 이진 탐색으로 두 합이 0에 가장 가까워지는 값을 찾는다.import sysinput = sys.stdin.readlinen = int(input())liquids = list(map(int, input().split()))answer = float("INF")left = 0right = 0for i in range(n-1): now = liquids[i] s, e = i+1, n-1 while s
문제0과 1로만 이루어진 수를 이진수라 한다. 이러한 이진수 중 특별한 성질을 갖는 것들이 있는데, 이들을 이친수(pinary number)라 한다. 이친수는 다음의 성질을 만족한다. 이친수는 0으로 시작하지 않는다. 이친수에서는 1이 두 번 연속으로 나타나지 않는다. 즉, 11을 부분 문자열로 갖지 않는다. 예를 들면 1, 10, 100, 101, 1000, 1001 등이 이친수가 된다. 하지만 0010101이나 101101은 각각 1, 2번 규칙에 위배되므로 이친수가 아니다. N(1 ≤ N ≤ 90)이 주어졌을 때, N자리 이친수의 개수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N이 주어진다. 출력 첫째 줄에 N자리 이친수의 개수를 출력한다.풀이import sysinput = sys.stdin..
문제외판원 순회 문제는 영어로 Traveling Salesman problem (TSP) 라고 불리는 문제로 computer science 분야에서 가장 중요하게 취급되는 문제 중 하나이다. 여러 가지 변종 문제가 있으나, 여기서는 가장 일반적인 형태의 문제를 살펴보자. 1번부터 N번까지 번호가 매겨져 있는 도시들이 있고, 도시들 사이에는 길이 있다. (길이 없을 수도 있다) 이제 한 외판원이 어느 한 도시에서 출발해 N개의 도시를 모두 거쳐 다시 원래의 도시로 돌아오는 순회 여행 경로를 계획하려고 한다. 단, 한 번 갔던 도시로는 다시 갈 수 없다. (맨 마지막에 여행을 출발했던 도시로 돌아오는 것은 예외) 이런 여행 경로는 여러 가지가 있을 수 있는데, 가장 적은 비용을 들이는 여행 계획을 세우고자 ..

문제https://school.programmers.co.kr/learn/courses/30/lessons/12952 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr풀이이 문제를 하면서 변수를 가지고 다니는 것이 빠르다는 것을 알게 되었다.풀이 방식이 맞는데 마지막 테스트케이스만 계속 시간초과가 발생했었다.왜그런지 못찾겠어서 다른 사람들의 풀이를 보다가 통과한 사람들은 변수를 함수에 직접 넣어줬다는 것을 알게 되었다. 풀이1 (함수 밖에 변수를 사용할 때, 오답)def solution(n): def nqueen(x): ans = 0 ..
DATE_FORMAT(DATE_DATA, '%Y-%m-%d')-- 코드를 입력하세요-- USED_GOODS_BOARD와 USED_GOODS_REPLY 테이블에서 2022년 10월에 작성된 게시글 제목, 게시글 ID, 댓글 ID, 댓글 작성자 ID, 댓글 내용, 댓글 작성일을 조회하는 SQL문을 작성해주세요. 결과는 댓글 작성일을 기준으로 오름차순 정렬해주시고, 댓글 작성일이 같다면 게시글 제목을 기준으로 오름차순 정렬해주세요SELECT B.TITLE, B.BOARD_ID, R.REPLY_ID, R.WRITER_ID, R.CONTENTS, DATE_FORMAT(R.CREATED_DATE, '%Y-%m-%d') AS CREATED_DATEFROM USED_GOODS_BOARD B RIGHT JOIN USED..
문제https://school.programmers.co.kr/learn/courses/30/lessons/176962 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr풀이한동안 코테 대비로 파이썬에만 집중해야겠다.자바스크립트랑 자바는 나중에 다시 채워야지 ㅎㅎㅎ Pythonfrom collections import dequedef solution(plans): plans.sort(key=lambda x:x[1]) answer, stack = [], [] n, s, r = plans[0] p1, p2 = map(int, s.split(':'..
문제https://school.programmers.co.kr/learn/courses/30/lessons/140107 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr풀이Pythonimport mathdef solution(k, d): answer = 0 i = 0 while i Javascriptfunction solution(k, d) { var answer = 0; let i = 0; while (i Java자바는 나누기 연산을 수행할 때, 값이 실수인지 정수인지에 따라서 값이 다르게 나타난다.따라서 d*d의 값..
문제https://school.programmers.co.kr/learn/courses/30/lessons/172927 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 풀이Python(시간초과 오답)from itertools import permutationsdef solution(picks, minerals): d = {'diamond' : 0, 'iron':1, 'stone':2} fatigue = [[1, 1, 1], [5, 1, 1], [25, 5, 1]] lst = [] for i in range(3): fo..
문제https://school.programmers.co.kr/learn/courses/30/lessons/134239 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr풀이Pythondef collatz(k): result = [k] while k > 1: if k % 2: k = k*3+1 else: k //= 2 result.append(k) return resultdef solution(k, ranges): answer = [] lst = collatz(..
문제https://school.programmers.co.kr/learn/courses/30/lessons/60057 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 풀이Pythondef solution(s): n = len(s) answer = n for i in range(1, n//2+1): tmp, re = s, '' while len(tmp) > i: t, tmp = tmp[:i], tmp[i:] cnt = 1 while tmp[:i] == t:..