比赛 20111104 评测结果 AAWTTTTTTT
题目名称 方程 最终得分 20
用户昵称 Truth.Cirno 运行时间 0.000 s
代码语言 C++ 内存使用 0.00 MiB
提交时间 2011-11-04 21:23:55
显示代码纯文本
#include <cstdio>
#include <iostream>
using namespace std;

int k,x,newx;
unsigned long long c=0;

int moderpow(int num,int level,int moder)
{
	int temp=1;
	while (level)
	{
		temp=(temp*num)%moder;
		level--;
	}
	return(temp);
}

void tryit(int sum,int rest,int pos,int restpos)
{
	int i;
	if (restpos==1)
	{
		c++;
		return;
	}
	for (i=1;i<=rest-(restpos-1);i++)
		tryit(sum+i,rest-i,pos+1,restpos-1);
}

int main(void)
{
	freopen("equationz.in","r",stdin);
	freopen("equationz.out","w",stdout);
	int i;
	scanf("%d %d\n",&k,&x);
	x=moderpow(x,x,1000);
	for (i=1;i<=x-(k-1);i++)
		tryit(i,x-i,1,k-1);
	cout<<c<<endl;
	fclose(stdin);
	fclose(stdout);
	return(0);
}