ascode 1114 홀수만 내림차순으로 출력하기
문제 설명
여러 개의 정수가 입력될 경우 입력된 정수들 중 양수이면서 홀수인 것들만 골라 내림차순으로 정렬한 후 출력하는 프로그램을 작성하시오(입력되는 정수들은 중복될 수 있다).
입력 설명
첫 번째 줄에 테스트케이스의 개수 T(1 <= T <= 10)가 입력된다. 그 다음 줄에 입력 정수의 개수(n, 1 <= n <= 100)가 주어지고 그 다음 줄에 n개의 정수(-100 이상, 100 이하)가 입력된다. 이와 같은 테스트케이스가 T개 입력된다.
출력 설명
각 테스트케이스의 순서대로 양수이면서 홀수인 것들만 내림차순으로 한 줄씩 출력한다. 각 정수들 사이에는 공백을 하나씩만 넣는다. 만약 출력되는 숫자가 하나도 없는 경우에는 None을 출력한다.
입력 예시
3
3
1 2 3
5
-3 3 1 -2 5
3
-2 4 6
출력 예시
3 1
5 3 1
None
코드
#include <stdio.h>
int main() {
int a, b, arr[101], temp = 0, c = 0, v = 0;
scanf("%d", &a);
for (v = 0; v < a; v++)
{
scanf("%d", &b);
for (int i = 0; i < b; i++)
{
scanf("%d", &arr[i]);
}
for (int i = 0; i < b; i++) {
for (int j = 0; j < b - 1; j++) {
if (arr[j] < arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
if (arr[i] % 2 == 1) {
c++;
}
}
for (int i = 0; i < b; i++)
{
if (c == 0) {
printf("None");
break;
}
if (arr[i] % 2 == 1) {
printf("%d ", arr[i]);
}
}
printf("\n");
c = 0;
}
}
나 : say
dma
댓글남기기