1. 程式人生 > >PAT乙級 1087 有多少不同的值 (20 分)

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

當自然數 n 依次取 1、2、3、……、N 時,算式 ⌊n/2⌋+⌊n/3⌋+⌊n/5⌋ 有多少個不同的值?(注:⌊x⌋ 為取整函式,表示不超過 x 的最大自然數,即 x 的整數部分。)

輸入格式:

輸入給出一個正整數 N(2≤N≤104)。

輸出格式:

在一行中輸出題面中算式取到的不同值的個數。

輸入樣例:

2017

輸出樣例:

1480

程式碼:

#include<stdio.h>
int main(){
	int N,cnt[12900]={0},count=0;
	scanf("%d",&N); 
	for(int i=1;i<=N;++i){
		int temp=i/2+i/3+i/4+i/5;
		if(cnt[temp]==0) ++count,cnt[temp]=1;
	}
	printf("%d",count);
	return 0;
}

在這裡插入圖片描述