788回転デジタル
788回転した数字
タイトル説明は
、私たちは番号に電話し、Xは、各桁は個別に180度回転だ場合、我々はまだ有効とXと別の番号を取得することができ、かなりの数です。これは、各桁が回転しなければならない必要です。
各桁の数であるか、デジタルスチル後に回転した場合、この番号が有効です。0,1、および8は、それ自体の後にまだ回転され、2及び5が互いにに回転させることができる;同様に図6及び図9に示すように、これらは他の図よりも回転数の後、もはや有効であることを除いて。
私たちは今、正の整数Nを持って、かなりの数の数であり、どのくらいの1からN Xに計算していますか?
デイアルゴリズム2019年6月8日36日目LeetCode 788回転した数字
例:
入力:
10
出力: 4
説明:
2、5、6、9:[1]、[10]の量の4つのがあります。
彼らは回転後に同じであるため注1及び10は、かなりの数ではありません。
出力: 4
説明:
2、5、6、9:[1]、[10]の量の4つのがあります。
彼らは回転後に同じであるため注1及び10は、かなりの数ではありません。
注意:
- Nは範囲[1、10000]です。
Java実装
class Solution {
public int rotatedDigits(int N) {
int res = 0;
for (int i = 1; i <= N; i++) {
if (isGood(i)) {
res++;
}
}
return res;
}
public boolean isGood(int num) {
boolean flag = false;
int c;
while (num != 0) {
c = num % 10;
num = num / 10;
if (c == 3 || c == 4 || c == 7) {
return false;
}
if (c == 2 || c == 5 || c == 6 || c == 9) {
flag = true;
}
}
return flag;
}
}
参考資料