比赛 |
普及组2016模拟练习3 |
评测结果 |
AWAWAAWWAA |
题目名称 |
圆桌会议 |
最终得分 |
60 |
用户昵称 |
Tabing010102 |
运行时间 |
0.198 s |
代码语言 |
C++ |
内存使用 |
0.29 MiB |
提交时间 |
2016-11-15 19:32:49 |
显示代码纯文本
#include <cstdio>
#include <algorithm>
using namespace std;
const int maxn = 10+5;
FILE *fin, *fout;
int n, k, d[maxn], ans=0;
int abs(int a) { return a<0?-a:a; }
int main() {
fin = fopen("round.in", "r");
fout = fopen("round.out", "w");
fscanf(fin, "%d%d", &n, &k);
for(int i = 0; i < n; i++) fscanf(fin, "%d", &d[i]);
sort(d, d+n);
do {
bool flag = true;
for(int i = 0; i < n; i++) if(abs(d[i]-d[(i+1)%n]) > k) { flag = false; break; }
if(flag) ans++;
/*if(flag) {
for(int i = 0; i < n; i++) printf("%d ", d[i]);
printf("\n");
}*/
}while(next_permutation(d, d+n));
fprintf(fout, "%d\n", ans/n);
return 0;
}