목록알고리즘/CS50 (23)
라떼는말이야
www.notion.so/4-0ac2b7de9f1e47118283ed80f1557441 ✔︎ 미션 4.가장 큰 낙하거리 찾기 ✔︎ 미션 4 (난이도 최상). www.notion.so ✔︎ 미션 4 (난이도 최상). 1. 미션 제목 가장 큰 낙하거리 찾기 2. 지시문 상자들이 쌓여있는 방이 있습니다. 방이 오른쪽으로 90도 회전하여 상자들이 중력의 영향을 받아 낙하한다고 할 때, 낙하거리가 가장 큰 상자를 구하여 그 낙하거리를 출력하는 프로그램을 작성해 봅시다. 아래 그림에서 총 26개 상자가 회전 후, 오른쪽 그림과 같은 상태가 됩니다. A상자의 낙하거리가 7로 가장 크므로 7을 출력하면 됩니다. 회전 결과, B 상자의 낙하거리는 6이고, C상자의 낙하거리는 1입니다. 중력은 회전이 완료된 이후에 적용되..
www.notion.so/3-8a779ae91adc4df794668aacba06f1be ✔︎ 미션 3.최단 시간에 다리건너기 ✔︎ 미션 3. www.notion.so ✔︎ 미션 3. 1. 미션 제목 최단 시간에 다리건너기 2. 지시문 N명의 사람들로 구성된 한 그룹이 밤중에 다리를 건너려고 합니다. 한 번에 최대 두 명 까지만 다리를 건널 수 있으며 다리 위를 지나가는 사람들은 반드시 손전등을 가지고 가야 합니다. n명의 사람들한테는 손전등이 한 개밖에 없기 때문에 남아 있는 사람들이 다리를 건너려면 어떤 식으로든 손전등을 가지고 다시 다리를 건너지 않은 사람들이 있는 곳으로 돌아가는 일을 해야합니다. 사람마다 다리를 건너는 속도가 다른데, 그룹의 속도는 가장 느린 구성원의 속도에 따라 결정됩니다. 가장..
www.notion.so/2-13236306f1d1473b89ec0b7dc3c04cfe ✔︎ 미션 2.친구들과 최단거리에 있는 집 구하기 ✔︎ 미션 2. www.notion.so ✔︎ 미션 2. 1. 미션 제목 친구들과 최단거리에 있는 집 구하기 2. 지시문 David의 친구들은 한 거리에 모두 모여살고 있습니다. David은 이번에 친구들이 살고 있는 거리로 이사를 가기로 했는데, 친구들의 집에서 거리가 가장 가까운 집을 구해서 그곳으로 이사를 하고 싶습니다. 모두 같은 거리에 살고 있으므로 아래 그림과 같이 친구들의 집 위치를 수직선 상에 표현할 수 있고, 그 때 집은 항상 정수점 위에만 있다고 가정합니다. 이 때, David이 어느 위치에 있는 집으로 이사를 가야 모든 친구들의 집까지의 거리의 합이..
www.notion.so/1-53f6454e143a4d339330f0e71b381b67 ✔︎ 미션 1.숫자 애너그램 찾기 ✔︎ 미션 1. www.notion.so ✔︎ 미션 1. 1. 미션 제목 숫자 애너그램 찾기 2. 지시문 ‘애너그램’이란 문자를 재배열하여 다른 뜻을 가진 단어로 바꾸는 것을 말합니다. 예를 들면 영어의 ‘tea’와 ‘eat’과 같이, 각 단어를 구성하는 알파벳의 구성은 같지만 뜻은 다른 두 단어를 말합니다. 우리말에는 ‘문전박대’와 ‘대박전문’과 같은 예를 들 수 있습니다. 우리는 문자 대신 숫자를 이용해서 애너그램을 찾는 프로그램을 만들어봅시다. 5자리의 숫자 1쌍이 입력으로 주어지며 애너그램일 경우에는 “True”를 아닐 경우에는 “False”를 출력하도록 합시다. 숫자를 입력 ..
www.notion.so/707372fe575941969bd7a43f275a4216 ✔︎ 샘플미션. 채점 프로그램을 만들어보자! 💡 샘플미션 (제출용X) www.notion.so ✔︎ 샘플미션. 채점 프로그램을 만들어보자! 1. 미션 제목 버블정렬 프로그램 작성 2. 지시문 0에서 9사이의 숫자 5개를 입력으로 받아 버블정렬을 이용하여 숫자를 오름차순으로 정렬하는 프로그램을 작성해봅시다. 숫자를 입력받는 부분은 따로 구현하지 않고 프로그램 안에서 배열로 선언하는 것으로 가정하고, 숫자에는 중복이 있을 수 있습니다. 예) 입력값: 32415 -> 출력값: 12345 입력값: 12791 -> 출력값: 11279 3. 핵심 개념 #버블정렬 🔔 답안 #include int main(void) { int numb..
www.notion.so/3-Queue-8c8a97585c77441983a129dc071471a8 ✔︎ 문제 3. Queue를 만들어보자! 1. 미션 제목 www.notion.so 1. 미션 제목 Queue 를 만들어 보자! 2. 지시문 배열을 이용하여 Queue 를 만들어 보자.특정 업무를 할 때, 우리는 일을 들어온 순서대로 해야할 때가 있다. 은행 업무를 예를 들어보자. 은행업무를 보기 위한 고객들이 10명이 있다고 치고, 각자 대기표가 있다. 그럼 은행원들은 각자 업무가 끝나면 대기한 고객을 순서대로 뽑아야 할 것이다. 이때 필요한 것이 Queue 이다. (1) 대기표를 뽑는다 (Queue 에 데이터를 삽입). (2) 대기인원을 보여준다 (queue 에 쌓여있는 데이터 조회). (3) 순서대로 대..
www.notion.so/2-b2662d00929d4c24993586636fc2115d ✔︎ 문제 2. 누가 빠졌는지 찾아보자! 1. 미션 제목 www.notion.so 1. 미션 제목 누가 빠졌는지 찾아보자! 2. 지시문 1 부터 N 까지의 숫자 모음이 있다. 여기서 K 라는 숫자가 빠진 N – 1 개의 파일이 있다. K 라는 숫자를 찾아보자. N 은 2 이상 500,000 이하의 값을 가짐 정렬되지 않은 숫자들의 모음 파일이 주어짐 (ex, 10.txt 100.txt 1_000.txt 10_000.txt 100_000.txt, 500_000.txt) 위 파일에서 빠진 숫자 K 를 찾아라 파일의 값을 읽어 n 과 k 가 빠진 arr 이를 저장하는 참고 코드는 아래 참고 (파일은 제공된 파일 사용) 파일..
www.notion.so/1-6ea63a079d3f49d9ac34fd3c77d12b5b ✔︎ 문제 1. 학점을 계산해보자! 1. 미션 제목 학점을 계산해보자! www.notion.so 1. 미션 제목 학점을 계산해보자! 2. 지시문 학생의 점수로 학점을 구하는 프로그램을 작성하시오. 키보드에서 입력받은 성적 (0 ~ 100 점) 의 유효성을 체크 학점은 배열을 이용하여 초기화 (아래 “학점 테이블” 참조) 학점은 “학점” 과 같이 계산하는데, 반드시 “학점 테이블”을 사용하여 계산하고 학점도 “학점 테이블”의 내용을 출력 성적을 입력하여 계속 학점을 구하며 특별한 문자인 “-1” 을 입력하면 프로그램을 종료 Table 1 - 학점 Table 2 - 학점 테이블 유효성 체크: 0 100 || score <..