• Codeforces Round #260 (Div. 2)B. Fedya and Maths


    B. Fedya and Maths
    time limit per test
    1 second
    memory limit per test
    256 megabytes
    input
    standard input
    output
    standard output

    Fedya studies in a gymnasium. Fedya's maths hometask is to calculate the following expression:

    (1n + 2n + 3n + 4nmod 5

    for given value of n. Fedya managed to complete the task. Can you? Note that given number n can be extremely large (e.g. it can exceed any integer type of your programming language).

    Input

    The single line contains a single integer n (0 ≤ n ≤ 10105). The number doesn't contain any leading zeroes.

    Output

    Print the value of the expression without leading zeros.

    Sample test(s)
    input
    4
    
    output
    4
    
    input
    124356983594583453458888889
    
    output
    0
    
    Note

    Operation x mod y means taking remainder after division x by y.

    Note to the first sample:

    让求出 (1^n + 2^n + 3^n + 4^n )mod 5 的结果,而n最大能够有10^5位数。仅仅能用字符串来存,将取模分开得到

    1^n mod 5 = 1 ;

    2^n mod 5 = 随着n从0開始,结果为 1 2 4 3 1 2 4 3 1 2 4 3 。。

    。。以1 2 4 3 循环

    3^n mod 5 = 随着n从0開始。结果为 1 3 4 2 1 3 4 2 1 3 4 2.。

    。。以1 3 4 2 循环

    4^n mod 5 = 。。

    。。结果为 1 4 1 4 1 4 以1 4 循环

    求给出的n是奇数还是偶数,方法推断最后一位奇数偶数。

    再求解n mod 4 。方法求出最后两位的对4取模的值

    #include <cstdio>
    #include <cstring>
    char str[110000] ;
    int main()
    {
        int ans = 1 , l , i , k ;
        scanf("%s", str);
        l = strlen(str);
        if( (str[l-1]-'0')%2 )
            ans += 4 ;
        else
            ans += 1 ;
        if( l-1 != -1 )
            k = ( str[l-1]-'0' );
        if( l-2 != -1 )
            k = k + (str[l-2]-'0')*10 ;
        if( k%4 == 0 )
            ans += 2 ;
        else if( k%4==1 )
            ans += 5 ;
        else if( k%4 ==2 )
            ans += 8 ;
        else
            ans += 5 ;
        printf("%d
    ", ans%5);
        return 0;
    }



     

  • 相关阅读:
    USACO Broken Necklace 通过了
    USACO Broken Necklace
    推荐顺序ACM
    usaco暂时无法访问
    格式
    稳定排序
    归并排序
    浅析Struts1和Struts2的Action线程安全问题
    判别式模型与生成式模型的区别
    远景能源一面
  • 原文地址:https://www.cnblogs.com/cxchanpin/p/6977969.html
Copyright © 2020-2023  润新知