B – Fedya and Maths 暴力找规律入门

B – Fedya and Maths 暴力找规律入门

B – Fedya and Maths

 CodeForces – 456B

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.

Examples

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:

B - Fedya and Maths 暴力找规律入门

题意大概就是一个很大的数,然后让你注意输入,还特别说明,输入的范围The single line contains a single integer n (0 ≤ n ≤ 10105).大于任何一种数据类型,然后,输出下面这个公式的解.

B - Fedya and Maths 暴力找规律入门

正常的做法肯定是想法设法的将输入模仿大数的输入方式,中间尽可能的优化时间复杂度:
然而最后可能。。。不是很乐观啊

只时候有一种针对各种应试的方法,名曰,暴力解题法

我们不妨就先用long long输入;然后先输出十个八个解,找找规律,比如

 

1
0
2
0
3
0
4
4
5
0
6
0
7
0
8
4
9
0

10
0
1
0
11
0
12
4
444
4
444444
4
44444444
4
2145151371
0

然后找规律,发现。。只要能被4整除就没问题;

然后只需:这么几笔就足够解决问题了


#include<stdio.h>

int main()
{
    long long  n;
    while(~scanf("%lld",&n))
    {
        if(n%4==0)
          printf("4\n");
        else
            printf("0\n");
    }
    return 0;
}

当然开始用c++怎么提交都过不了,我想我这思路应该没问题啊,改为C语言就过了,当然还是靠人指点了一下。

附上正规的做法;
 

//易发现本题的循环节 [0,0,0,4],[0,0,0,4],...
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<algorithm>
#include<functional>
#include<iostream>
#include<cmath>
#include<cctype>
#include<ctime>
using namespace std;
#define For(i,n) for(int i=1;i<=n;i++)
#define Fork(i,k,n) for(int i=k;i<=n;i++)
#define Rep(i,n) for(int i=0;i<n;i++)
#define ForD(i,n) for(int i=n;i;i--)
#define RepD(i,n) for(int i=n;i>=0;i--)
#define Forp(x) for(int p=pre[x];p;p=next[p])
#define Lson (x<<1)
#define Rson ((x<<1)+1)
#define MEM(a) memset(a,0,sizeof(a));
#define MEMI(a) memset(a,127,sizeof(a));
#define MEMi(a) memset(a,128,sizeof(a));
#define INF (2139062143)
#define F (100000007)
#define MAXN (100000+10)
long long mul(long long a,long long b){return (a*b)%F;}
long long add(long long a,long long b){return (a+b)%F;}
long long sub(long long a,long long b){return (a-b+(a-b)/F*F+F)%F;}
typedef long long ll;
char c[MAXN];
int main()
{
//	freopen("b.in","r",stdin);
//	freopen(".out","w",stdout);
	scanf("%s",c+1);
	int n=strlen(c+1);
	int t;
	if (n==1) t=c[1]-'0';
	else t=c[n]-'0'+(c[n-1]-'0')*10;
	
	if (t%4==0) cout<<"4\n";
	else cout<<"0\n";
	
	
	return 0;
}

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/114880.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 最小二乘法(多元)推导

    最小二乘法(多元)推导最小二乘法(多元)推导1声明本文的数据来自网络,部分代码也有所参照,这里做了注释和延伸,旨在技术交流,如有冒犯之处请联系博主及时处理。2最小二乘法简介最小二乘法是一种优化的方法,它主要是通过最小化误差的平方和来做函数拟合的方法。3最小二乘法多元推导有如下回归模型其中b0,b1,…bp,μ2×1,x2,…xp都是与无关的未知参数。这里设是一个样本。这里令残差平方和的表达式为…

    2022年5月13日
    67
  • GBDT算法整理_算法简单题目

    GBDT算法整理_算法简单题目最近重点学习了gbdt算法,看了较多的博客文章,整理了一下这些比较有用的内容,包括算法理论、算法分析、代码剖析、注意事项等各个方面。转载来源:http://www.cnblogs.com/rocketfan/p/4324605.htmlhttp://www.cnblogs.com/rocketfan/p/4365950.htmlhttp://www.cnblogs.com/

    2022年10月12日
    2
  • 分享一个免费的图片去水印网站[通俗易懂]

    分享一个免费的图片去水印网站[通俗易懂]一、软件截图二、操作说明1、先上传图片2、点击选择区域,在图片上选择要去水印的区域,可支持同时选择多个区域。3、点击开始去水印4、保存去水印的图片到本地。5、如果不满意可再次选择。三、免费体验地址http://121.196.27.184:8080/…

    2025年7月14日
    4
  • 4.vue 的双向绑定的原理是什么?_监听门事件

    4.vue 的双向绑定的原理是什么?_监听门事件vue:双向绑定原理、监视函数、事件修饰符、双向绑定在不同表单元素中的原理。

    2022年10月17日
    3
  • 左值和右值的理解[通俗易懂]

    关于左值和右值的理解:①从位置来讲:eg:a=b;a在左边,a为左值,那在右边的b就是右值(前提是语句合法,比如说a+25=b;则不合法) ②深层次讲:左值(L_value,L理解为Location)为地址值右值(R_value,R理解为Read)为数据值eg:a=b;即将b(右值–数据值)赋值给a(左值–地址值) ③再通俗一点讲:左值就是…

    2022年4月6日
    74
  • css css样式表 选择器 声明「建议收藏」

    css css样式表 选择器 声明「建议收藏」css部分css指层叠样式表(cascadingstylesheets),它们控制网页内容的外观。使用css设置页面样式时,可以将内容与表现形式分开。网页内容(HTML代码)驻留在HTML文件自身中,而css驻留在另一个文件中(外部样式表*.css)或HTML文档的另一部分(通常为文件头部分)中。写页面时要做到结构(HTML)、样式(css)、行为(js)相分离,

    2022年7月14日
    27

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号