这个题当初想了很久,一直wa,后来吃饭的时候忽然灵机一现想出来一个方法,很有成就感。不必考虑去重排序这些问题了,简单、明了。嘿嘿
题目地址点击打开链接;
#include<stdio.h>
#include<string.h>
#define MAXN 1000 + 10
int a[MAXN];
int main() {
int i, j, n, k;
memset(a, 0, sizeof(a));
scanf("%d%d", &n, &k);
for(i = 1; i <= k; i++)
for(j = 1; j <= n; j++)
if(j % i == 0) a[j] = !a[j];
for(i = 1; i <= n; i++)
if(a[i]) printf("%d ", i);
printf("\n");
return 0;
}