Dandy Now!
  • [ CS/코딩 테스트 ]
    [레벨1][자바스크립트] 공원 산책
    2023-04-18 16:35:57
    https://school.programmers.co.kr/learn/courses/30/lessons/172928 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 장애물을 만나면 이동한 위치를 롤백해야 한다. 이러한 로직을 처리함에 있어 func 함수를 정의하여 문제를 해결했다. for문 순회 시 인덱스와 값을 함께 사용하기 위해 for in 문법을 이용해고, 이중 배열 요소 비교-장애물을 만났을 때 롤백 처리-를 위해 이중 배열의 요소를 문자열로 변경(JSON.stringify) 후 비교하였다. function solution(park, routes) ..
  • [ CS/코딩 테스트 ]
    [레벨1][파이썬] 공원 산책
    2023-04-17 22:05:58
    https://school.programmers.co.kr/learn/courses/30/lessons/172928 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 장애물을 만나면 이동한 위치를 롤백해야 한다. 이러한 로직을 처리함에 있어 func 함수를 정의하여 문제를 해결했다. 최초에는 해당 로직을 함수로 빼지 않고 작성하여 제출했는데 "코드 실행"에서의 테스트 케이스는 통과하였으나 제출 시에는 통과하지 못한 테스트 케이스가 다수 발생했었다. 이동 로직을 함수로 정의하여 재사용하는 방식으로 적용하니 간결한 코드와 통과가 가능했다. def solution..
  • [ CS/코딩 테스트 ]
    [알고리즘][파이썬] 백준_10866_덱
    2022-01-09 17:47:45
    "10866번: 덱" 파이썬 풀이 https://www.acmicpc.net/problem/10866 10866번: 덱 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 정수를 저장하는 덱에 N개의 명령어를 처리해야 한다. insert 활용 # insert 사용(결과: 맞았습니다!) import sys deq = [] for i in range(int(sys.stdin.readline())): cmd = sys.stdin.readline().split() if cmd[0] == 'push_front': deq.in..
  • 게시글 대표 이미지 썸네일 주소
    [ CS/코딩 테스트 ]
    [알고리즘][파이썬] 백준_1158_요세푸스 문제
    2022-01-05 10:57:11
    "1158번: 요세푸스 문제" 파이썬 풀이 https://www.acmicpc.net/problem/1158 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net 1번 부터 N명의 사람이 원을 이루며 앉아있고, K번째 사람을 한 사람씩 제거한다. 제거된 순서를 예제와 같은 형태로 출력하면 된다. while문 사용 # while문 사용(결과: 맞았습니다!) N, K = map(int, input().split()) cir = [i for i in range(1, N+1)] rm = [] i = K - 1 while cir: if i > len(cir) - 1: i = i % len(cir) else: rm...
  • [ CS/코딩 테스트 ]
    [알고리즘][파이썬] 백준_10845_큐
    2022-01-03 17:25:53
    "10845번: 큐" 파이썬 풀이 https://www.acmicpc.net/problem/10845 10845번: 큐 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 명령어를 구현하고 N개의 명령어 입력으로 큐를 조작해야 한다. 주의할 점은 출력은 명령어를 입력할 때마다 한 줄씩 출력되어야 한다. 예제 출력 1과 같은 형태로 단번에 모든 값이 출력되면 안된다. 이 부분을 오해해 "틀렸습니다"를 경험했다. 출력 값 누적 후 한번에 출력(틀렸습니다ㅠ) # 출력 값 누적 후 한번에 출력(결과: 틀렸습니다) impor..
  • [ CS/코딩 테스트 ]
    [알고리즘][파이썬] 백준_1406_에디터
    2022-01-01 16:47:58
    https://www.acmicpc.net/problem/1406 1406번: 에디터 첫째 줄에는 초기에 편집기에 입력되어 있는 문자열이 주어진다. 이 문자열은 길이가 N이고, 영어 소문자로만 이루어져 있으며, 길이는 100,000을 넘지 않는다. 둘째 줄에는 입력할 명령어의 개수 www.acmicpc.net 임의의 문자열을 입력하고, 커서를 조작하는 명령어, "L(왼쪽 한칸 이동), D(오른쪽 한칸 이동), B(왼쪽 문자 삭제), P $($라는 문자 왼쪽에 추가)"를 M개 입력한 결과를 출력해야 한다. 백준 알고리즘 강의 초급에 해당하는 문제인데, 시간제한 때문에 무척 애를 먹었다(이게 초급이라니). 시간 초과 # insert or slice 이용(결과: 시간 초과) import sys def L():..
  • 게시글 대표 이미지 썸네일 주소
    [ CS/코딩 테스트 ]
    [알고리즘][파이썬] 백준_1874_스택 수열
    2021-12-30 11:45:58
    https://www.acmicpc.net/problem/1874 1874번: 스택 수열 1부터 n까지에 수에 대해 차례로 [push, push, push, push, pop, pop, push, push, pop, push, push, pop, pop, pop, pop, pop] 연산을 수행하면 수열 [4, 3, 6, 8, 7, 5, 2, 1]을 얻을 수 있다. www.acmicpc.net 문제를 이해하는데 시간이 오래 걸렸다! n개의 숫자를 입력 받아, 1부터 숫자에 해당하는 값 만큼 PUSH한다. 예를 들어 첫 번째 수가 4라면, 1, 2, 3, 4를 차례대로 PUSH하여 각각 '+' 출력! PUSH한 값이 4와 같아지면, 4를 POP하여 '-' 출력! 4 다음 수가 4 보다 작으면, 예를 들어 3..
  • [ CS/코딩 테스트 ]
    [알고리즘][파이썬] 백준_9093_단어 뒤집기
    2021-12-28 22:24:13
    https://www.acmicpc.net/problem/9093 9093번: 단어 뒤집기 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 문장이 하나 주어진다. 단어의 길이는 최대 20, 문장의 길이는 최대 1000이다. 단어와 단어 사이에는 www.acmicpc.net T개의 문장을 입력 받아, 문장별로 각 단어를 뒤집어 출력해야 한다. reversed 함수 이용(맞았습니다) # reversed 함수 이용(결과: 맞았습니다!) def make_rev(s): lst = s.split() rst = [] for i in lst: rst.append(''.join(reversed(i))) # join과 reversed 함수 이용 문자열 뒤집기 for i in ..