알고리즘 c언어 26

[알고리즘 2단계] 약수의 합

[출처 : Goorm 사이트 - 웃긴 냉면] 문제 자연수 n이 주어졌을 때 n의 약수의 합을 구하는 프로그램을 작성하십시오. 예를 들어 n이 20이라면 20의 약수는 1, 2, 4, 5, 10, 20 이므로 답은 42가 됩니다. 입력 자연수 n 출력 n의 약수의 합 풀이 약수구하는 방식 복습차원의 문제.. #include int main() { int n, sum=0; scanf("%d", &n); for(int i=1; i

[알고리즘 2단계] 선택 정렬(Selection Sort)

[출처 : Goorm 사이트 - 기쁜 초밥] 문제 Selection Sort는 정렬되지 않은 전체 자료들의 위치를 맞추어가며 교환하며 정렬하는 알고리즘입니다. Selection Sort를 통해 입력된 수열을 오름차순으로 정렬하면서 입력한 단계에서의 상태를 출력하는 프로그램을 작성하십시오. 입력 첫 줄에 수열의 개수 n과 진행 단계 s를 입력한다. (1

[알고리즘 2단계] 다이아몬드, 마름모 (반복문 활용)

[출처 : Goorm 사이트 - 웃긴 초밥] 문제 가장 빛나는 보석 다이아몬드를 출력하는 문제입니다. 입력한 숫자에 해당하는 줄 수 에 맞게 다이아몬드 모양(마름모)을 출력하는 프로그램을 작성해보시오. *주의사항은 입력이 짝수일 경우와 홀수일 경우의 처리입니다. 입력 자연수 (최대 100) 출력 입력한 수에 맞는 라인 수를 가진 마름모 모양 풀이 이중 반복문 연습할 때 많이 해보았던 유형이다. *로 피라미드를 만들었던 것을 잘 응용하면 될 것 같다. - 피라미드 만드는 코드 //피라미드 #include int main() { int n; scanf("%d", &n); for(int i=1; i

[알고리즘 2단계] 방 탈출하기 (퀵 정렬, 이진탐색)

[출처 : Goorm 사이트 - Yun Goon] 문제 한밤 중에 갑자기 출출해진 종수, 뭐라도 사먹기위해 편의점으로 향하던 중 괴한으로부터 습격을 받아 정신을 잃었습니다. 긴 시간이 흐르고, 정신을 차린 종수는 자신 앞에 길이가 N인 수열과 그 옆에 떨어진 메모지를 발견하였습니다. 메모지를 읽어보니 다음과 같이 쓰여있습니다. 이 방을 탈출하고 싶다면 다음 지시를 따르시오. 눈 앞에 보이는 수열을 모두 외운 후 벽에 있는 버튼을 누른다. 모니터를 통해 M개의 숫자를 하나씩 보여주면, 그 숫자가 수열에 있는지 없는지 바로 대답한다. 한 번이라도 실패하면 탈출할 수 없다. 종수는 과연 이 방을 탈출할 수 있을까요? 입력 첫째 줄에 정수 N이 주어집니다. (단, ) 둘째 줄에 수열을 구성하는 -10억 이상 1..

[알고리즘 2단계] 알파벳 빈도 구하기

[출처 : Goorm 사이트 - 심심한 튀김] 문제 이 문제는 입력된 문장에 포함된 알파벳의 빈도를 구하고 출력하는 것이 목표입니다. 대소문자 구분 없이 알파벳의 빈도를 구하는 프로그램을 작성하십시오. 입력 임의의 문장(최대 80자) 출력 알파벳 별 빈도 수 풀이 if나 switch문을 사용하면 코드가 너무 길어지니 배열과 반복문으로 간결히 만들어보자 1. 출력 부분 코드 - 아스키코드를 사용하여 알파벳의 10진수 값을 이용한다. for(int j=0; j96)alpa = input[i]-97;//소문자의 아스키 10진수값의 시작이 (a:97, b:98...) elsealpa = input[i]-65;//대문자의 아스키 코드 10진수값의 시작이 65 (A:65, B:66...) alpha_count[al..

[알고리즘 2단계] 완전수

[출처 : Goorm 사이트 - 화난 묵밥] 문제 완전수란 자신을 제외한 모든 약수의 합이 자신과 같은 수를 말합니다. 입력값으로 범위를 입력하고 해당 범위 내의 완전수들을 모두 출력하는 프로그램을 작성하세요. * 완전수의 예 : 6 6의 약수 1, 2, 3, 6 => 1 + 2 + 3 = 6 (완전수) 입력 두 수 A, B ( A 1부터 해당 수 까지 나누기해서 나머지 값이 '0'인 경우 2) 구한 약수 더하기 3) 더한 결과값이 숫자 n과 같은지 비교 4) 같은 경우 출력하기. 이중 반복문을 이용했다. 숫자가 완전수 인지 판별할 때마다 이전 ..