2007727_wa.cpp

来自「北大大牛代码 1240道题的原代码 超级权威」· C++ 代码 · 共 38 行

CPP
38
字号
# include <iostream>

using namespace std;

bool mark;
static long f[] = {362880,40320,5040,720,120,24,6,2,1};
void solve(int n,long N)
{
	if(!N)
		return ;
	for(int i = n; i < 9; i++)
	{
		if(N>f[i])
			solve(i+1,N-f[i]);
		else
			if(N==f[i])
			{
				mark = 1;
				return ;
			}
	}
}

int main()
{
	long N;

	while(cin>>N&&N!=-1)
	{
		mark = 0;
		solve(0,N);
		if(mark)
			cout<<"YES\n";
		else
			cout<<"NO\n";
	}
	return 1;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?