コーディングテスト練習記録
5665 ワード
2021.12.21初日
白駿2577号(数字の個数)
質問する
3つの自然数A,B,Cの時A× B × Cの計算結果に基づいて、1つのプログラムを書き出して、1つの数字が0から9まで何回書いたかを求めます.
例えば、A=150、B=266、C=427の場合、A× B × C = 150 × 266 × 427=17037300、計算結果によると、17037300では0が3回、1が1回、3が2回、7が2回と書かれている.
私の答え a,b,c入力,sum=a b c とString に変換 for文、charat(0)-「0」評価 各の値はインデックスとして使用され、プラス番号は です. Stringを変換する必要はありません.Whlie文ごとに10個あり、残りは を使用できます.文字相関 charから数値に変換文字「0」から を減算 Character.getNumericValue(ch) を使用
数字からcharに変換 Integer.toString(i).charAt(0) Character.forDigit(数値、基数) を使用
文字列をcharに変換 toCharArray()
白駿2577号(数字の個数)
質問する
3つの自然数A,B,Cの時A× B × Cの計算結果に基づいて、1つのプログラムを書き出して、1つの数字が0から9まで何回書いたかを求めます.
例えば、A=150、B=266、C=427の場合、A× B × C = 150 × 266 × 427=17037300、計算結果によると、17037300では0が3回、1が1回、3が2回、7が2回と書かれている.
私の答え
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int a = scanner.nextInt();
int b = scanner.nextInt();
int c = scanner.nextInt();
int sum = a * b * c;
int[] numArr = new int[10];
String sumStr = String.valueOf(sum);
for (int i = 0; i < sumStr.length(); i++) {
numArr[(int)sumStr.charAt(i) - '0']++;
}
for(int x:numArr) {
System.out.println(x);
}
}
}
考える数字からcharに変換
文字列をcharに変換
Reference
この問題について(コーディングテスト練習記録), 我々は、より多くの情報をここで見つけました https://velog.io/@jgjgill/코딩테스트-연습-기록-xzjyz8srテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol