[C언어] SWEA 2056 연월일 달력 8자리 숫자가 날짜로 유효하면 YYYY/MM/DD형식으로 출력 유효하지 않으면 -1을 출력 2월은 28인 경우만 고려한다. switch case문을 이용해 월 별로 케이스를 나눴다. #include int main(void) { int test_case, T; scanf("%d", &T); for (test_case = 1; test_case = 1 && d = 1 && d = 1 && d = 1 && m SWEA/[D1] 2022.03.02
[C언어] SWEA 2063 중간값 찾기 문제 N 개의 점수가 주어졌을 때, 중간값을 출력한다. N은 항상 홀수이고, 9이상 199 이하의 정수다. 버블정렬을 사용했다. #include int main(void) { int N; scanf("%d", &N); int arr[199] = { 0 }; for (int i = 0; i arr[j]) { temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; } } } printf("%d", arr[N/2]); return 0; } 전에 풀었던.. SWEA/[D1] 2022.03.02
[C언어] SWEA 2005 파스칼의 삼각형 크기가 N인 파스칼의 삼각형을 출력한다. N은 1이상 10 이하의 정수이다. 우선 배열을 두 개 잡았다. 하나는 파스칼의 삼각형을 기억하고, 하나는 기억한 삼각형에서 다음 줄을 계산한다. 그리고 첫번째 수와 마지막 수가 항상 1인 것을 계산하기 위해 맨앞과 뒤를 0으로 채웠다. if문으로 j==0, j==(i-1)일 때를 구분해줘도 된다. n[12]에 파스칼의 삼각형을 저장해주고, n2[10]에서 계산한다. n[1]에는 1이 저장되어 있다. 2번째 줄에서는 n2에서 0+1, 1+0을 계산해 1 1을 출력한다. 그럼 n2에 1 1이 저장되었으므로 n[1], n[2]에 1, 1을 저장한다. 그럼 n에는 {0, 1, 1, 0, 0 ... }(0은 초기화된 값) 이렇게 저장이 된다. 파스칼의 삼각형 두번째 줄이.. SWEA/[D2] 2022.03.01
[C언어] SWEA 1984 중간 평균값 구하기 문제 10개 수를 입력 받아 최대 수와 최소 수를 제외한 나머지의 평균값을 출력한다. 소수점 첫째 자리에서 반올림한 정수 조건 각 수는 0이상 10,000이하의 정수 코드 #include #include int main(void) { int test_case, T; scanf("%d", &T); for (test_case = 1; test_case max) max = n[i]; } double avg = 0; for (int i = 0; i < 10; i++) { avg += n[i]; } avg = avg - min - max; avg = avg / 8; printf("#%d %d\n", test_case, (int)(avg + 0.5)); } return 0; } min과 max를 구해놓고, 배열의 .. SWEA/[D2] 2022.03.01
[C언어] SWEA 1285 아름이의 돌 던지기 문제 N명의 사람이 돌 던지기 게임을 한다. -100,000부터 100,000까지 숫자가 일렬로 써져 있고, 사람들은 100,000에서 최대한 0에 가깝게 돌을 던진다. 가장 0에 가깝게 돌이 떨어진 위치와 0 사이의 거리 차이, 그렇게 던진 사람이 몇 명인지 구한다. 조건 1 SWEA/[D2] 2022.03.01
[C언어] SWEA 1288 새로운 불면증 치료법 N의 배수를 셌을 때, 모든 숫자를 보게 되는 시점은? 0부터 9까지 저장된 배열로 숫자가 나왔는지 안나왔는지 셀 것이다. N번 양을 센다고 해서 횟수를 말하는 줄 알았는데 그게 아니라 양 번호를 말하는 거였다. #include int main(void) { int test_case, T; scanf("%d", &T); for (test_case = 1; test_case SWEA/[D2] 2022.02.27
[C언어] SWEA 1986 지그재그 숫자 1부터 N까지의 숫자에서 홀수는 더하고 짝수는 뺀다. 예) N이 5일 경우, 1 - 2 + 3 - 4 + 5 = 3 (N은 1이상 10이하) #include int main(void) { int test_case, T; scanf("%d", &T); for (test_case = 1; test_case SWEA/[D2] 2022.02.27
[C언어] SWEA 1946 간단한 압축 풀기 알파벳을 주어진 만큼 출력하되 한 줄에 10개씩 출력한다. 구현 문자열에 알파벳을 저장하고 10개씩 출력할 것이다. #include int main(void) { int test_case, T; scanf("%d", &T); for (test_case = 1; test_case SWEA/[D2] 2022.02.26
[C언어] SWEA 1976 시각 덧셈 목표 : 시 분으로 이루어진 시각을 2개 입력받아 더한 값을 시 분으로 출력 - 12시간제 분이 시로 넘어갈 때와 시가 12를 넘어갈 때 등의 경우를 처리해주면 될 것 같다. 분을 먼저 더하고 시를 더하는데, 분은 60이상일 때와 아닐 때를 나눈다. 시는 12이상일 때와 아닐 때를 구분한다. for(test_case = 1; test_case =60){ if(t1+t2+1 > 12){ printf("%d %d\n", t1+t2+1-12, m1+m2-60); }else{ printf("%d %d\n", t1+t2+1, m1+m2-60); } }else{ if(t1+t2 > 12){ printf("%d %d\n", t1+t2-12, m1+m2); }else{ printf("%d %d\n", t1+t2, m1.. SWEA/[D2] 2022.02.26
[D1] SWEA2058 - 자릿수 더하기 하나의 자연수를 입력 받아 각 자릿수의 합을 계산하는 프로그램을 작성하라. [제약 사항] 자연수 N은 1부터 9999까지의 자연수이다. (1 ≤ N ≤ 9999) [입력] 입력으로 자연수 N이 주어진다. [출력] 각 자릿수의 합을 출력한다. #include int main(void){ int n, i, sum = 0; scanf("%d", &n); for(i=0; i SWEA/[D1] 2021.04.07