在C ++中找到(1 ^ n + 2 ^ n + 3 ^ n + 4 ^ n)mod 5

在本教程中,我们将解决以下问题。

给定一个整数n,我们必须找到(1 n +2 n +3 n +4 n)%5

如果n大,则数字(1 n +2 n +3 n +4 n)将非常大。它也不适合长整数。因此,我们需要找到替代解决方案。

如果您对数字1,2,3,4,5,6,7,8,9求解方程式,您将分别获得10、30、100、354、1300、4890、18700、72354、282340值。

仔细观察方程式的结果。您会发现方程式结果的最后一位数字每第4个数字重复一次。这是方程的周期性。

如果不实际计算方程式,我们可以说

如果n%4 == 0,那么(1 n +2 n +3 n +4 n)%5将为4,否则为0

示例

让我们看一下代码。

#include <bits/stdc++.h>
using namespace std;
int findSequenceMod5(int n) {
   return (n % 4) ? 0 : 4;
}
int main() {
   int n = 343;
   cout << findSequenceMod5(n) << endl;
   return 0;
}
输出结果

如果运行上面的代码,则将得到以下结果。

0

结论