> 백엔드 개발 > C++ > 본문

C 프로그래밍에서는 배열의 합이 짝수가 되도록 배열에 가장 작은 숫자를 추가합니다.

王林
풀어 주다: 2023-08-25 17:41:06
앞으로
1113명이 탐색했습니다.

C 프로그래밍에서는 배열의 합이 짝수가 되도록 배열에 가장 작은 숫자를 추가합니다.

배열이 주어지면 가장 작은 숫자(0보다 커야 함)를 배열에 추가하여 배열의 합이 짝수가 되도록 합니다.

Input- 1 2 3 4,

Output- 2

Explanation - 배열의 합은 10이므로

최소 2를 추가하여 합을 짝수로 만듭니다.

방법 1: 배열의 모든 요소의 합을 계산한 다음 합이 짝수인지 확인한 다음 최소값을 2로 추가하고, 그렇지 않으면 최소값을 1로 추가합니다.

Input- 1 2 3 4,

Output- 2

Explanation-배열의 합은 10이므로 우리는 합이 짝수가 되도록 가장 작은 숫자 2를 더합니다.

Example

#include<iostream>
using namespace std;
int main() {
   int arr[] = { 1, 2, 3, 4};
   int n=4;
   int sum=0;
   for (int i = 0; i <n; i++) {
      sum+=arr[i];
   }
   if (sum % 2==0) {
      cout <<"2";
   } else {
      cout <<"1";
   }
   return 0;
}
로그인 후 복사

방법 2 - 배열의 홀수 요소 수를 계산합니다. 홀수 발생 횟수가 짝수이면 2를 반환하고, 그렇지 않으면 1을 반환합니다.

입력 - 1 2 3 4 5

출력 < /strong>- 1

설명- 아니요. 배열의 값은 3

합계를 짝수로 만들려면 최소 숫자 1을 추가하세요.

#include<iostream>
using namespace std;
int main() {
   int arr[] = { 1, 2, 3, 4,5};
   int n=5;
   int odd = 0;
   for (int i = 0; i < n; i++) {
      if (arr[i] % 2!=0) {
         odd += 1;
      }
   }
   if (odd % 2==0) {
      cout <<"2";
   } else {
      cout <<"1";
   }
   return 0;
}
로그인 후 복사

방법 3 - 플래그 변수를 사용합니다(0으로 초기화됨). 배열에서 홀수 요소를 찾을 때마다 부울 변수에 대해 NOT(!) 연산을 수행합니다. 이 논리 연산자는 플래그 변수의 값을 반전시킵니다. 즉, 변수가 0이면 변수를 1로 변환하고 그 반대로 변환합니다.

Input- 1 2 3 4 5

Output- 1

Explanation- 변수는 0으로 초기화됩니다.

배열 탐색

1은 홀수이고 변수는 1씩 변경됩니다.

2는 짝수이고

3은 홀수이면 변수가 0으로 변경됩니다.

4는 짝수

4 p>

5는 홀수이므로 변수는 1이 됩니다.

변수 값이 1이면 홀수개의 요소가 있다는 의미이며, 최소 요소 개수는 요소의 합을 짝수로 만드는 것은 +1이 됩니다.

그 외 최소 수량은 2개입니다.

#include<iostream>
using namespace std;
int main() {
   int arr[] = { 1, 2, 3, 4,5};
   int n=5;
   bool odd = 0;
   for (int i = 0; i < n; i++) {
      if (arr[i] % 2!=0) {
         odd = !odd;
      }
   }
   if (odd) {
      cout <<"1";
   } else {
      cout <<"2";
   }
   return 0;
}
로그인 후 복사

위 내용은 C 프로그래밍에서는 배열의 합이 짝수가 되도록 배열에 가장 작은 숫자를 추가합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿