ハザード数
16055 ワード
問題の説明
正の整数xを下のスケール数にするには、xをxの桁数の和で除算する必要があります.例えば、18の桁数の和は1+8=9であり、18は9で除算されるので、18は下付き文字数となる.自然数xを入力し、xがハザード数の関数かどうかをチェックし、解を完了します.
コード#コード#
function solution(x) {
var strx=String(x);
var arrx=Array.from(strx);
var strarrx=[]
for(i=0;i<arrx.length;i++){
strarrx.push(parseFloat(arrx[i]))
}
var sumx=strarrx.reduce((a,b)=>a+b,0)
var divx=x%sumx
if(divx==0){
var answer=true
}
else if(divx!=0){
var answer=false}
return answer;
}
プロセス
1.数値を文字列に変換して分離します。
var x=12
x
12
var strx=String(x)
strx
"12"
2.数字の各桁数を別々に並べます。
タイル分割の変換(from)
var arrx=Array.from(strx)
arrx
(2) ["1", "2"]
3.文字列を数値に変換します。
for(i=0;i<arrx.length;i++){
strarrx.push(parseFloat(arrx[i]))}
2
strarrx
(2) [1, 2]
4.各ビット数を加算します。
var sumx=strarrx.reduce((a,b)=>a+b,0)
undefined
sumx
3
5.残りが0の場合、trueと判定する
//나누어떨어진다는 것은 나머지가0이라는 것을 의미한다.
var divx=x%sumx
if(divx==0){
var answer=true}else{var answer=false}
answer
true
コード#コード#
function solution(x) {
//12를 넣으면
var strx=String(x);
//"12"
var arrx=Array.from(strx);
// ["1", "2"]
var strarrx=[]
for(i=0;i<arrx.length;i++){
strarrx.push(parseFloat(arrx[i]))
}
//[1, 2]
var sumx=strarrx.reduce((a,b)=>a+b,0)
//3
var divx=x%sumx
//0
if(divx==0){
var answer=true
}
else if(divx!=0){
var answer=false}
return answer;
//true
}
/*solution(10)
true
solution(11)
false
solution(12)
true
solution(13)
false
Review
- string
関数のまとめを参照
- from
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/from Array.from(arrayLike[, mapFn[, thisArg]])
パラメータ
ArrayLike:アレイに変換する類似のアレイオブジェクトまたは重複可能なオブジェクト.
mapfn(Optional):配列内のすべての要素に対して呼び出すマッピング関数.
thisArg(Optional):mapfnを実行するときにこの値の値として使用します.Array.from('foo');
// ["f", "o", "o"]
- reduce
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce
アレイ内のすべての値の合計
var sum = [0, 1, 2, 3].reduce(function (accumulator, currentValue) {
return accumulator + currentValue;
}, 0);
// sum is 6
矢印関数を使用して作成
var total = [ 0, 1, 2, 3 ].reduce(
( accumulator, currentValue ) => accumulator + currentValue,
0
);
4つの因子を持つ。
アキュムレータ:コールバックの戻り値の累計
CurrentValue:処理する現在の要素
CurrentIndex(Optional):処理する現在の要素のインデックス
配列(Optional):reduce()を呼び出す配列
例
Reference
この問題について(ハザード数), 我々は、より多くの情報をここで見つけました
https://velog.io/@gygy/같은-숫자는-싫어
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
function solution(x) {
var strx=String(x);
var arrx=Array.from(strx);
var strarrx=[]
for(i=0;i<arrx.length;i++){
strarrx.push(parseFloat(arrx[i]))
}
var sumx=strarrx.reduce((a,b)=>a+b,0)
var divx=x%sumx
if(divx==0){
var answer=true
}
else if(divx!=0){
var answer=false}
return answer;
}
プロセス
1.数値を文字列に変換して分離します。
var x=12
x
12
var strx=String(x)
strx
"12"
2.数字の各桁数を別々に並べます。
タイル分割の変換(from)
var arrx=Array.from(strx)
arrx
(2) ["1", "2"]
3.文字列を数値に変換します。
for(i=0;i<arrx.length;i++){
strarrx.push(parseFloat(arrx[i]))}
2
strarrx
(2) [1, 2]
4.各ビット数を加算します。
var sumx=strarrx.reduce((a,b)=>a+b,0)
undefined
sumx
3
5.残りが0の場合、trueと判定する
//나누어떨어진다는 것은 나머지가0이라는 것을 의미한다.
var divx=x%sumx
if(divx==0){
var answer=true}else{var answer=false}
answer
true
コード#コード#
function solution(x) {
//12를 넣으면
var strx=String(x);
//"12"
var arrx=Array.from(strx);
// ["1", "2"]
var strarrx=[]
for(i=0;i<arrx.length;i++){
strarrx.push(parseFloat(arrx[i]))
}
//[1, 2]
var sumx=strarrx.reduce((a,b)=>a+b,0)
//3
var divx=x%sumx
//0
if(divx==0){
var answer=true
}
else if(divx!=0){
var answer=false}
return answer;
//true
}
/*solution(10)
true
solution(11)
false
solution(12)
true
solution(13)
false
Review
- string
関数のまとめを参照
- from
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/from Array.from(arrayLike[, mapFn[, thisArg]])
パラメータ
ArrayLike:アレイに変換する類似のアレイオブジェクトまたは重複可能なオブジェクト.
mapfn(Optional):配列内のすべての要素に対して呼び出すマッピング関数.
thisArg(Optional):mapfnを実行するときにこの値の値として使用します.Array.from('foo');
// ["f", "o", "o"]
- reduce
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce
アレイ内のすべての値の合計
var sum = [0, 1, 2, 3].reduce(function (accumulator, currentValue) {
return accumulator + currentValue;
}, 0);
// sum is 6
矢印関数を使用して作成
var total = [ 0, 1, 2, 3 ].reduce(
( accumulator, currentValue ) => accumulator + currentValue,
0
);
4つの因子を持つ。
アキュムレータ:コールバックの戻り値の累計
CurrentValue:処理する現在の要素
CurrentIndex(Optional):処理する現在の要素のインデックス
配列(Optional):reduce()を呼び出す配列
例
Reference
この問題について(ハザード数), 我々は、より多くの情報をここで見つけました
https://velog.io/@gygy/같은-숫자는-싫어
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
var x=12
x
12
var strx=String(x)
strx
"12"
var arrx=Array.from(strx)
arrx
(2) ["1", "2"]
for(i=0;i<arrx.length;i++){
strarrx.push(parseFloat(arrx[i]))}
2
strarrx
(2) [1, 2]
var sumx=strarrx.reduce((a,b)=>a+b,0)
undefined
sumx
3
//나누어떨어진다는 것은 나머지가0이라는 것을 의미한다.
var divx=x%sumx
if(divx==0){
var answer=true}else{var answer=false}
answer
true
function solution(x) {
//12를 넣으면
var strx=String(x);
//"12"
var arrx=Array.from(strx);
// ["1", "2"]
var strarrx=[]
for(i=0;i<arrx.length;i++){
strarrx.push(parseFloat(arrx[i]))
}
//[1, 2]
var sumx=strarrx.reduce((a,b)=>a+b,0)
//3
var divx=x%sumx
//0
if(divx==0){
var answer=true
}
else if(divx!=0){
var answer=false}
return answer;
//true
}
/*solution(10)
true
solution(11)
false
solution(12)
true
solution(13)
false
- string
関数のまとめを参照
- from
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/from
Array.from(arrayLike[, mapFn[, thisArg]])
パラメータArrayLike:アレイに変換する類似のアレイオブジェクトまたは重複可能なオブジェクト.
mapfn(Optional):配列内のすべての要素に対して呼び出すマッピング関数.
thisArg(Optional):mapfnを実行するときにこの値の値として使用します.
Array.from('foo');
// ["f", "o", "o"]
- reduce
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce
アレイ内のすべての値の合計
var sum = [0, 1, 2, 3].reduce(function (accumulator, currentValue) {
return accumulator + currentValue;
}, 0);
// sum is 6
矢印関数を使用して作成
var total = [ 0, 1, 2, 3 ].reduce(
( accumulator, currentValue ) => accumulator + currentValue,
0
);
4つの因子を持つ。
アキュムレータ:コールバックの戻り値の累計
CurrentValue:処理する現在の要素
CurrentIndex(Optional):処理する現在の要素のインデックス
配列(Optional):reduce()を呼び出す配列
例
Reference
この問題について(ハザード数), 我々は、より多くの情報をここで見つけました https://velog.io/@gygy/같은-숫자는-싫어テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol