백준 #10811: 바구니를 뒤집어

문제를 해결하고 문제에 C 솔루션이 없는지 확인하고 적어 둡니다.

선택한 범위에서만 배열의 순서를 반대로 하는 것이 핵심인 문제

먼저 작은 범위의 배열을 만들고 코드를 작성합니다.

#포함하다

정수 메인(비어 있음) {

int Arr(5) = {0,1,2,3,4};
정수 i, j;
// 뒤집을 범위 설정
scanf_s(“%d %d”, &i, &j);
//설정 범위의 최소값(i)과 최대값(j)부터 시작하여 최소값 + 1, 최대값 – 1, 단계적으로 값을 변경
동안 (i < j) {
정수 a = Arr(i);
Anr(i) = Anr(j);
Arr(j) = a;
i++;
제이–;
}

for (int i = 0; i < 5; i++) {
printf(“Arr(%d)의 값은 %d입니다\n”, i, Arr(i));
}

0을 반환합니다.
}

이 코드를 사용하여 문제에 대해 원하는 코드를 만듭니다.

#포함하다

정수 메인(무효){
정수 N=0, M=0;
int Arr(100) = { 0, };

scanf(“%d %d”, &N, &M);

for (int i = 0; i < N; i++) {
Arr(i) = i + 1;
}

for (int s = 0; s < M; s++) {
정수 i, j;
// 뒤집을 범위 설정
scanf(“%d %d”, &i, &j);

//설정 범위의 최소값(i)과 최대값(j)부터 시작하여 최소값 + 1, 최대값 – 1, 단계적으로 값을 변경
동안 (i < j) {
int sam = Arr(i-1);
Anr(i-1) = Anr(j-1);
Arr(j-1) = 샘;
i++;
제이–;
}
}

for (int i = 0; i < N; i++) {
printf(“%d”, Arr(i));
}
0을 반환합니다.
}