분류 전체보기 147

85. 연속 부분 수열 합의 개수(파이썬)

문제 설명철호는 수열을 가지고 놀기 좋아합니다. 어느 날 철호는 어떤 자연수로 이루어진 원형 수열의 연속하는 부분 수열의 합으로 만들 수 있는 수가 모두 몇 가지인지 알아보고 싶어졌습니다. 원형 수열이란 일반적인 수열에서 처음과 끝이 연결된 형태의 수열을 말합니다. 예를 들어 수열 [7, 9, 1, 1, 4] 로 원형 수열을 만들면 다음과 같습니다.원형 수열은 처음과 끝이 연결되어 끊기는 부분이 없기 때문에 연속하는 부분 수열도 일반적인 수열보다 많아집니다.원형 수열의 모든 원소 elements가 순서대로 주어질 때, 원형 수열의 연속 부분 수열 합으로 만들 수 있는 수의 개수를 return 하도록 solution 함수를 완성해주세요.제한사항3 ≤ elements의 길이 ≤ 1,0001 ≤ element..

문제 풀이 2024.07.04

AI 웹 개발 공부 21일 차(본 캠프) 코드 풀이

84. 괄호 회전하기 (파이썬)  문제 설명다음 규칙을 지키는 문자열을 올바른 괄호 문자열이라고 정의합니다.(), [], {} 는 모두 올바른 괄호 문자열입니다.만약 A가 올바른 괄호 문자열이라면, (A), [A], {A} 도 올바른 괄호 문자열입니다. 예를 들어, [] 가 올바른 괄호 문자열이므로, ([]) 도 올바른 괄호 문자열입니다.만약 A, B가 올바른 괄호 문자열이라면, AB 도 올바른 괄호 문자열입니다. 예를 들어, {} 와 ([]) 가 올바른 괄호 문자열이므로, {}([]) 도 올바른 괄호 문자열입니다.대괄호, 중괄호, 그리고 소괄호로 이루어진 문자열 s가 매개변수로 주어집니다. 이 s를 왼쪽으로 x (0 ≤ x 제한사항s의 길이는 1 이상 1,000 이하입니다.입출력 예sresult"[](..

문제 풀이 2024.07.03

AI 웹 개발 공부 20일 차(본 캠프) 코드 풀이

83. 귤 고르기 (파이썬) 문제 설명경화는 과수원에서 귤을 수확했습니다. 경화는 수확한 귤 중 'k'개를 골라 상자 하나에 담아 판매하려고 합니다. 그런데 수확한 귤의 크기가 일정하지 않아 보기에 좋지 않다고 생각한 경화는 귤을 크기별로 분류했을 때 서로 다른 종류의 수를 최소화하고 싶습니다.예를 들어, 경화가 수확한 귤 8개의 크기가 [1, 3, 2, 5, 4, 5, 2, 3] 이라고 합시다. 경화가 귤 6개를 판매하고 싶다면, 크기가 1, 4인 귤을 제외한 여섯 개의 귤을 상자에 담으면, 귤의 크기의 종류가 2, 3, 5로 총 3가지가 되며 이때가 서로 다른 종류가 최소일 때입니다.경화가 한 상자에 담으려는 귤의 개수 k와 귤의 크기를 담은 배열 tangerine이 매개변수로 주어집니다. 경화가 귤..

문제 풀이 2024.07.02

AI 웹 개발 공부 19일 차(본 캠프) 코드 풀이

82. 멀리뛰기 (파이썬)   문제 설명효진이는 멀리 뛰기를 연습하고 있습니다. 효진이는 한번에 1칸, 또는 2칸을 뛸 수 있습니다. 칸이 총 4개 있을 때, 효진이는(1칸, 1칸, 1칸, 1칸)(1칸, 2칸, 1칸)(1칸, 1칸, 2칸)(2칸, 1칸, 1칸)(2칸, 2칸)의 5가지 방법으로 맨 끝 칸에 도달할 수 있습니다. 멀리뛰기에 사용될 칸의 수 n이 주어질 때, 효진이가 끝에 도달하는 방법이 몇 가지인지 알아내, 여기에 1234567를 나눈 나머지를 리턴하는 함수, solution을 완성하세요. 예를 들어 4가 입력된다면, 5를 return하면 됩니다.제한 사항n은 1 이상, 2000 이하인 정수입니다.입출력 예nresult4533입출력 예 설명입출력 예 #1위에서 설명한 내용과 같습니다.입출력 ..

문제 풀이 2024.07.01

WIL 1 주차

1주차(사전 캠프 미포함) 현재 나의 수준 현황 HTML, CSS: 인터넷 찾아가면서 만들어가는 정도JS: 필요한 함수만 가져다 쓰는 정도Python: 기본적인 문법 함수 문제 없음. 추후 웹 연동 및 데이터베이스 연동 등 배우는 강의에 따라 달라질 것으로 예상알고리즘: 4주차까지 수강한 내용 바탕으로, 관련 자료구조 및 알고리즘의 로직 이해함. 코드도 혼자 한번씩 따라서 구현.GIT 및 GITHUB: 단 하나도 안됨 2주차 목표 HTML, CSS: 강의내용을 복기하며 HTML 및 CSS 작성에 익숙해지기JS: 필요한 함수의 사용법이나 매개변수등을 파악하기Python: 현황 유지알고리즘: 배운 자료구조 및 알고리즘 코드 구현으로 복습하기GIT 및 GITHUB: 사용방법 및 협업에 쓸 정도까지 수준 올리기..

잡다한 것 2024.06.28

알고리즘 4 (합병 정렬, 힙 정렬)

1. 버블 정렬(이전 글)2. 선택 정렬 (이전 글) 3. 삽입 정렬 (이전 글) 4. 퀵 정렬 (이전 글) 5. 합병 정렬6. 힙 정렬  5. 합병 정렬(Merge Sort): 데이터를 낱개로 쪼갠 후 merge 함수를 이용해 병합하는 방식 5-1 merge함수: 두 정렬된 파일을 하나의 파일로 합쳐 빈 파일에 저장하는 함수A= [1, 2, 3, 5] # 정렬된 배열 AB= [4, 6, 7, 8] # 정렬된 배열 BC= [] # 두 집합을 합칠 빈 배열 C ↓1단계 : [1, 2, 3, 5] ↓ [4, 6, 7, 8] 1과 4를 비교합니다! 1 4 이므로 4을 C 에 넣습니다. C:[1, 2, 3, 4] ..

알고리즘 2024.06.28

알고리즘 3 (버블 정렬, 선택 정렬, 삽입 정렬, 퀵 정렬)

1. 버블 정렬2. 선택 정렬3. 삽입 정렬4. 퀵 정렬5. 합병 정렬(다음 글)6. 힙 정(다음 글)  0. 정렬을 배우는 이유: 데이터 형태에 따른 시간 복잡도를 줄이기 위함.0-1 시간복잡도:버블 정렬, 선택 정렬, 삽입 정렬: O(n^2)퀵 정렬: 최악->O(n^2) / 평균-> O(nlogn)합병 정렬, 힙 정렬: 최악, 평균 -> O(nlogn)1. 버블 정렬(Bubble Sort): 첫 번째 자료와 두 번째 자료를, 두 번째 자료와 세 번째 자료를, … 이런 식으로 (마지막-1)번째 자료와 마지막 자료를 비교하여 교환하면서 자료를 정렬하는 방식. 작은 숫자, 큰 숫자 순서로 있으면 내버려두고 큰 숫자, 작은 숫자 순서로 있으면 둘의 위치를 변경하는 방식 (다음 루프때는 (마지막-1)번째 자료..

알고리즘 2024.06.27

AI 웹 개발 공부 16일 차(본 캠프) 코드 풀이

74. 신고 결과 받기(파이썬)  문제 설명신입사원 무지는 게시판 불량 이용자를 신고하고 처리 결과를 메일로 발송하는 시스템을 개발하려 합니다. 무지가 개발하려는 시스템은 다음과 같습니다.각 유저는 한 번에 한 명의 유저를 신고할 수 있습니다.신고 횟수에 제한은 없습니다. 서로 다른 유저를 계속해서 신고할 수 있습니다.한 유저를 여러 번 신고할 수도 있지만, 동일한 유저에 대한 신고 횟수는 1회로 처리됩니다.k번 이상 신고된 유저는 게시판 이용이 정지되며, 해당 유저를 신고한 모든 유저에게 정지 사실을 메일로 발송합니다.유저가 신고한 모든 내용을 취합하여 마지막에 한꺼번에 게시판 이용 정지를 시키면서 정지 메일을 발송합니다.다음은 전체 유저 목록이 ["muzi", "frodo", "apeach", "ne..

문제 풀이 2024.06.26

AI 웹 개발 공부 15일 차(본 캠프) 코드 풀이

73. 공원산책(파이썬) 문제 설명지나다니는 길을 'O', 장애물을 'X'로 나타낸 직사각형 격자 모양의 공원에서 로봇 강아지가 산책을 하려합니다. 산책은 로봇 강아지에 미리 입력된 명령에 따라 진행하며, 명령은 다음과 같은 형식으로 주어집니다.["방향 거리", "방향 거리" … ]예를 들어 "E 5"는 로봇 강아지가 현재 위치에서 동쪽으로 5칸 이동했다는 의미입니다. 로봇 강아지는 명령을 수행하기 전에 다음 두 가지를 먼저 확인합니다.주어진 방향으로 이동할 때 공원을 벗어나는지 확인합니다.주어진 방향으로 이동 중 장애물을 만나는지 확인합니다.위 두 가지중 어느 하나라도 해당된다면, 로봇 강아지는 해당 명령을 무시하고 다음 명령을 수행합니다.공원의 가로 길이가 W, 세로 길이가 H라고 할 때, 공원의 좌..

문제 풀이 2024.06.25

AI 웹 개발 공부 14일 차(본 캠프) 코드 풀이

71. 개인정보 수집 유효기간(파이썬)문제 설명고객의 약관 동의를 얻어서 수집된 1~n번으로 분류되는 개인정보 n개가 있습니다. 약관 종류는 여러 가지 있으며 각 약관마다 개인정보 보관 유효기간이 정해져 있습니다. 당신은 각 개인정보가 어떤 약관으로 수집됐는지 알고 있습니다. 수집된 개인정보는 유효기간 전까지만 보관 가능하며, 유효기간이 지났다면 반드시 파기해야 합니다.예를 들어, A라는 약관의 유효기간이 12 달이고, 2021년 1월 5일에 수집된 개인정보가 A약관으로 수집되었다면 해당 개인정보는 2022년 1월 4일까지 보관 가능하며 2022년 1월 5일부터 파기해야 할 개인정보입니다.당신은 오늘 날짜로 파기해야 할 개인정보 번호들을 구하려 합니다.모든 달은 28일까지 있다고 가정합니다.다음은 오늘 ..

문제 풀이 2024.06.24