1087 有多少不同的值 (20 分)(测试点三段错误)

38 阅读1分钟

1087 有多少不同的值 (20 分)

题目链接

算法分析:一遍for循环就好

测试点:

如果测试点三段错误,那你就是数组越界了。

代码实现

#include<bits/stdc++.h>
using namespace std;
#define N 20005
int on[N], cnt;
int main(){
	int n;
	scanf("%d", &n);
	for(int i = 1; i <= n; ++ i){
		int x = i / 2 + i / 3 + i / 5;
		if(!on[x]){
			on[x] = 1;
			cnt ++;
		}
	}
	printf("%d", cnt);
	return 0;
}