1. 程式人生 > >ALGO-54 演算法訓練 簡單加法(基本型)

ALGO-54 演算法訓練 簡單加法(基本型)

  演算法訓練 簡單加法(基本型)  

時間限制:1.0s   記憶體限制:512.0MB

    

問題描述

  首先給出簡單加法算式的定義:
  如果有一個算式(i)+(i+1)+(i+2),(i>=0),在計算的過程中,沒有任何一個數位出現了進位,則稱其為簡單的加法算式。
  例如:i=3時,3+4+5=12,有一個進位,因此3+4+5不是一個簡單的加法算式;又如i=112時,112+113+114=339,沒有在任意數位上產生進位,故112+113+114是一個簡單的加法算式。

  問題:給定一個正整數n,問當i大於等於0且小於n時,有多少個算式(i)+(i+1)+(i+2)是簡單加法算式。其中n<10000。

輸入格式

  一個整數,表示n

輸出格式

  一個整數,表示簡單加法算式的個數

樣例輸入

4

 

樣例輸出

 

3
#include <iostream>
using namespace std;

int main(int argc, char *argv[]) {
	int n;
	cin>>n; 
	int x,y,a,b;
	int res=0;
	for(int i=0;i<n;i++){
		a=0,b=0,x=i,y=i*3+3;
		while(x/=10) a++;		
		while(y/=10) b++;
		if(b==a)
			res++;				
	}
	cout<<res<<endl;
	return 0;
}