zoukankan      html  css  js  c++  java
  • CodeForces

    题意:请你输出((1^n + 2^n + 3^n + 4^n) \% 5)的结果。(n(0 <= n <= 10^{100000}))

    分析:一个数能否被4整除,只需要看最后两位,因为任何一个数都能化成(a * 100 + b)的形式,因为(100)能被4整除,所以只需要看b能否被4整除即可。这道题可以发现当n是4的倍数的时候,输出4,其余都为0。

    #include <iostream>
    #include <cstdio>
    #include <cstring>
    #include <vector>
    #include <algorithm>
    
    using namespace std;
    
    int main()
    {
    	string s;
    	cin >> s;
    
    	int sz = s.size();
    
    	int a = 0;
    	if (sz >= 2)
    	{
    		a = (s[sz - 1] - '0') + (s[sz - 2] - '0') * 10;
    	}
    	else
    	{
    		a = s[sz - 1];
    	}
    
    	if (a % 4 == 0)
    		puts("4");
    	else
    		puts("0");
    
    	return 0;
    }
    

    ps.当然可以直接套个高精度模4即可。

  • 相关阅读:
    XML 命名空间
    XML Schema验证
    java 解析XML文档
    Java线程:创建与启动
    CCF-CSP 201312-5 I'm stuck !
    memset函数用法
    C++的字符串多行输入
    OS复习1
    os复习2
    javamail编程2
  • 原文地址:https://www.cnblogs.com/pixel-Teee/p/13307023.html
Copyright © 2011-2022 走看看