SGU - 105
Description There is sequence 1, 12, 123, 1234, ..., 12345678910, ... . Given first N elements of that sequence. You must determine amount of numbers in it that are divisible by 3. Input Input contains N (1<=N<=231 - 1). Output Write answer to the output. Sample Input 4 Sample Output 2 Source |
数学题!找规律!
规律:0,1,1,0,1,1,0,1,1,0,1,1.... (0代表不能被3整除,1代表能被3整除!)
AC代码:
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int n;
scanf("%d", &n);
int ans = 0;
ans += (n/3)*2;
if(n%3==2) ans++;
printf("%d\n", ans);
return 0;
}