이 문제에서는 큰 정수를 나타내는 문자열 num이 제공됩니다. 우리의 임무는 N의 큰 값에 대해 N %(나머지 4)를 찾는 것입니다.
문제 설명 − 4로 나머지 숫자를 찾습니다.
문제를 이해하기 위해 예를 들어보겠습니다.
입력
num = 453425245
출력
1
솔루션 접근 방식
문제에 대한 간단한 해결책은 숫자의 마지막 두 자리를 사용하여 4를 포함하는 숫자의 나머지를 찾을 수 있다는 사실을 사용하는 것입니다. 따라서 큰 숫자의 경우 숫자의 마지막 두 자리를 4로 나누어 나머지를 찾을 수 있습니다.
우리 솔루션의 작동을 설명하는 프로그램
예시
#include <bits/stdc++.h>
using namespace std;
int calc4Mod(string num, int len) {
int rem;
if (len == 1)
rem = num[0] - '0';
else
rem = (num[len - 2] - '0') * 10 + num[len - 1] - '0';
return (rem % 4);
}
int main() {
string num = "84525765476513";
int len = num.length();
cout<<"The remainder of the number with 4 is "<<calc4Mod(num, len);
return 0;
} 출력
The remainder of the number with 4 is 1