読者です 読者をやめる 読者になる 読者になる

SRM 510 Div2 Easy TheAlmostLuckyNumbersDivTwo

問題

4と7はlucky number,数字の各桁を見た時lucky number以外が高々1つな時その数字はalmost lucky numberと呼ぶ.aからbまでの数字でalmost lucky numberの数を返せ.

解答

a <= i <= bのiについてalmost lucky numberか調べ,数え上げるだけ.

class TheAlmostLuckyNumbersDivTwo {
public:
  int find(int a, int b) {
    int res = 0;

    for(int i = a; i <= b; i++){
      int nonlucky = 0;
      int j = i;
      while(j > 0){
        if ((j%10) == 4 || (j%10) == 7){

        }else{
          nonlucky++;
        }
        j /= 10;
      }
      if (nonlucky <= 1 )res++;
    }
    return res;
  }
};