본문 바로가기

C C++166

C언어 백준 2751번 수 정렬하기 2 문제 오름차순으로 입력된 수를 정렬하는 방식이다. 이 때 문제점은 제한된 시간 내에 수행되어야 한다는 점이다. stdlib.h에서 제공하는 라이브러리를 이용하고 qsort를 통해 퀵정렬을 사용하였다. 문제풀이 #include #include #include int compare(const void* a, const void* b) { int num1=*(int*)a; int num2=*(int*)b; if (num1num2) { return 1; } return 0; } int main(void) { int arr[1000100]={}; int n; scanf("%d",&n); for(int i=0; i 2022. 6. 26.
[프로그래머스] 없는 숫자 더하기 (Lv1) (C언어) 문제 풀이 문제에는 분명한 조건이 있다. 1) 원소는 최대 9개이고 각 원소는 서로 다르다(중복되지 않는다). 2) 모든 원소가 있을 때 총합은 45이다. 따라서 모두 있을 때 - 현재 배열 내 원소 => '없는 숫자'가 된다.따라서 총합 45에서 현재 있는 값들을 빼면, 없는 숫자의 총합이 된다는 점을 이용하였다. 소스 코드 #include #include #include // numbers_len은 배열 numbers의 길이입니다. int solution(int numbers[], size_t numbers_len) { int answer=45; for(int i = 0; i 2022. 6. 26.
C언어 백준 11722번 가장 긴 감소하는 부분 수열 소스코드 #include #define MAX(a,b) (((a)>(b))? (a):(b)) int arr[1010]={0,}; int dp[1010]={1,}; int N; int temp; int dp_max; void input() { scanf("%d",&N); for (int i=1; i 2022. 6. 25.
C언어 백준 11055번 가장 큰 증가 부분 수열 문제풀이 #include #include #define MAX(a, b) (((a) > (b)) ? (a) : (b)) int n; int arr[1010]={}; int dp[1010]={}; void input() { scanf("%d", &n); dp[0]=arr[0]=0; for (int i=1; i 2022. 6. 25.