Algorithm ( p & swlug )/Programmers(25)
-
8월 2주차 과제 : 문제 2_중복된 숫자개수
8월 2주차 과제는 다음과 같다. 1. 피자나눠먹기(2) 2. 중복된 숫자개수 3. 중앙값 구하기 두번째 문제이다. 문제 설명 정수가 담긴 배열 array와 정수 n이 매개변수로 주어질 때, array에 n이 몇 개 있는 지를 return 하도록 solution 함수를 완성해보세요. 입출력 예 [1, 1, 2, 3, 4, 5] 1 2 [0, 2, 3, 4] 1 0 처음에는 문제를 잘못읽어서 n이 주어질 때 몇개 있는지를 물었는데, array배열에서 중복된 개수가 몇개인지 묻는 거로 판단해서 문제를 풀었다. 이런식으로.. 음 심지어 처음에 있는 값은 중복으로 취급 안하는 줄 알고 경우의 수 까지 나누고 ,, 코드를 짜봤다. 근데 또 테스트는 신기하게 통과했다 근데 답안 제출했는데 틀려서 문제를 다시읽어봤는..
2023.08.13 -
8월 2주차 과제 : 문제 1_피자나눠먹기(2)
8월 2주차 과제는 다음과 같다. 1. 피자나눠먹기(2) 2. 중복된 숫자개수 3. 중앙값 구하기 오늘의 첫번째 문제이다. 문제 설명 머쓱이네 피자가게는 피자를 여섯 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 매개변수로 주어질 때, n명이 주문한 피자를 남기지 않고 모두 같은 수의 피자 조각을 먹어야 한다면 최소 몇 판을 시켜야 하는지를 return 하도록 solution 함수를 완성해보세요. n result 6 1 10 5 4 2 머쓱이네 피자가게는 피자를 여섯 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 매개변수로 주어질 때, n명이 주문한 피자를 남기지 않고 모두 같은 수의 피자 조각을 먹어야 한다면 최소 몇 판을 시켜야 하는지를 return 하도록 solution 함수를 완..
2023.08.12 -
8월 1주차 과제 : 문제 3_피자나눠먹기
8월 1주차 과제는 다음과 같다. 1. 편지 2. 양꼬치 3. 피자나눠먹기 1주차 마지막 문제이다. 머쓱이는 양꼬치 가게에 피자가게를 소유한 효자(●'◡'●) 머쓱이네 피자가게는 피자를 7조각 씩 잘라준다. 피자를 나눠먹을 사람의 수가 얼마이든 일단 한조각씩은 무조건 먹어야한다. 그렇다면 7의 배수만큼 사람이 존재할 때와 아닐 때로 구분해야할 것같다. 이 문제를 푸는 것도 역시나 if문을 활용해 경우를 나누어보았다. 만약에 피자를 먹을 사람이 7의배수만큼 있다면 즉, if (n%7==0) 7로 나눈 나머지가 0이라면, answer는 7로 나눈 n의 수만큼 피자의 개수가 필요할 것이다. 그런데 만약에 15명이 존재한다면? 2판을 시키면 14조각이니까 아쉽게도 한판이 더 필요하다. 그렇기때문에 남은 조각이 ..
2023.08.03 -
8월 1주차 과제 : 문제 2_양꼬치
8월 1주차 과제는 다음과 같다. 1. 편지 2. 양꼬치 3. 피자나눠먹기 두번째 문제이다. 머쓱이는 양꼬치 가게를 하는데 10인분 먹으면 음료수를 하나씩 서비스로 준다고한다. 그러면 여기서 10인분이상 먹었을 때와 아닐때를 if문을 사용해서 구분을 해야겠다. 만약에 머쓱이네 가게에서 양꼬치를 10인분 이상을 먹는다면 음료무료로 먹는 부분은 개수에서 빼주어야 값이 계산이 가능한데 기본적으로 양꼬치 가격인 12000원에 곱하기 n을 해주어 양꼬치 가격을 구한다. 그리고 음료수는 내가 먹은 음료수 개수에서 서비스로 받은 부분만큼 빼주어야하니까 k에서 n을 10으로 나누어준 몫 만큼 빼주었다. 만약 10인 분을 시켰다면 10/10은 1 즉, 한개를 서비스로 받을 것이고, 15인분을 먹었다면 1.xx이므로 몫을..
2023.08.03 -
8월 1주차 과제 : 문제 1_편지
8월 1주차 과제는 다음과 같다. 1. 편지 2. 양꼬치 3. 피자나눠먹기 첫번째 문제이다. 머쓱이가 할머니께 편지를 쓰려고 하는데 글자를 2cm로 쓴다고 한다. 그러면 원래 글자 크기를 1이라고 할 때 2배 만큼 더 공간이 필요할 것이다. c에서는 문자열 단원에서 strlen, strcpy, strcat같은 것들을 배우는데, 문자열의 길이는 strlen으로 사용할 수있다. 간단하게 answer가 문자열의 길이를 대입받고 대신 1이 아닌 2cm이므로 x2를 해주면 될거라고 생각했다. 그래서 message값에 문자열 길이를 나타낸 만큼에 *2 를 해주었다. 정답입니다.
2023.08.03 -
7월 4주차 과제 : 문제 3_배열 자르기
7월 4주차 과제는 다음과 같다. 1. 배열의 평균값 2. 배열 뒤집기 3. 배열자르기 마지막 문제이다. 마지막 문제도 동적메모리를 할당받아야한다. 흠.. 이 부분은 따로 공부가 더 필요할 것같다. #include #include #include int* solution(int numbers[], size_t numbers_len, int num1, int num2) { // 자른 부분 배열의 길이 계산 size_t sub_array_len = num2 - num1 + 1; // 동적 할당을 사용하여 자른 부분 배열 생성 int* answer = (int*)malloc(sub_array_len * sizeof(int)); // numbers 배열의 num1번째 인덱스부터 num2번째 인덱스까지의 부분 배..
2023.07.30