QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#432842#6712. Sum of Factorialssurenjamts#ML 7ms3796kbC++14661b2024-06-07 18:43:082024-06-07 18:43:08

Judging History

你现在查看的是最新测评结果

  • [2024-06-07 18:43:08]
  • 评测
  • 测评结果:ML
  • 用时:7ms
  • 内存:3796kb
  • [2024-06-07 18:43:08]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std; 
const int N = 1e6 + 5;
bool ans[N+5];
void solve() {
		int n;
	cin >> n;
	if(n == -1) return;
	if(ans[n]) cout << "YES\n";
	else cout << "NO\n";
	solve();

	
}
signed main(){
	long fact[20];
	fact[0] = 1;
	for (int i = 1; i<=11; i++){
	   fact[i] = fact[i-1] * i;	
		
	}

	ans[0] = true;
	ans[1] = true;
	for(int k = 1; k<=11; k++){
		  vector<int> temp;
		  for(int i = 0; i<=N; i++){
		  	   if(ans[i]) {
		  	   	     if(i + fact[k] > N) continue;
		  	   	     temp.push_back(i + fact[k]);
		  	   }
		  }
		  for(auto it : temp) ans[it] = true;
	}

	
	
	
solve();
	
	
}

详细

Test #1:

score: 100
Accepted
time: 7ms
memory: 3796kb

input:

9
-1

output:

YES

result:

ok single line: 'YES'

Test #2:

score: -100
Memory Limit Exceeded

input:

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
715
716
717
718
719
720
721
722...

output:

YES
YES
YES
YES
YES
NO
YES
YES
YES
YES
YES
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
YES
YES
YES
YES
NO
YES
YES
YES
YES
YES
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
YES
YES
YES
YES
NO
YES
YES
YES
YES
YES
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
YES
YES
YES
YES
NO
YES
YES
YES
YES
YES
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
YES
...

result: