现在的位置: 首页 > 综合 > 正文

hdu 2817 (水)

2014年01月21日 ⁄ 综合 ⁄ 共 476字 ⁄ 字号 评论关闭

点击打开链接

/*

刚开始以为要用大数呢,后来才发现是个水题。。。

需要用到二分幂。。

2013-04-22

*/

#include"stdio.h"
#include"string.h"
typedef __int64 int64;
int64 fun(int64 a,int64 b)
{
	int64 t,ans;
	ans=1;
	t=a%200907;
	while(b)
	{
		if(b%2==1)ans=(ans*t)%200907;
		t=(t*t)%200907;
		b/=2;
	}
	return ans;
}
int main()
{
	int T;
	int64 ans;
	int64 a,b,c,k;
	scanf("%d",&T);
	while(T--)
	{
		scanf("%I64d%I64d%I64d%I64d",&a,&b,&c,&k);
		if(2*b==a+c)
		{
			ans=a%200907+((k-1)%200907)*((c-b)%200907)%200907;
			ans%=200907;
		}
		else
		{
			ans=(a*fun(b/a,k-1))%200907;
		}
		printf("%I64d\n",ans);
	}
	return 0;
}

抱歉!评论已关闭.