题意:给定一个数列,数列形式如下:1,12,123,1234,12345......12345678910,1234567891011.......。求第1-n项中能被3整除的项的个数。
思路:注意这样一个事实:上述数列每隔两项有一个不能被三整除。而且容易知道,不能被3整除是在n%3==1的时候.
#include <stdio.h>
int n;
int main(){
int i,j;
scanf("%d",&n);
if((n%3==0) || (n%3==1))
printf("%d\n",n/3*2);
else
printf("%d\n",(n+1)/3*2-1);
return 0;
}