function solution(s) {
let arr = s.split(' ')
let answer = ''
for (let i = 0; i < arr.length; i++) {
for(let j = 0; j < arr[i].length; j++) {
if(j % 2 === 0) {
answer += arr[i][j].toUpperCase()
} else {
answer += arr[i][j]
}
}
if (i < arr.length -1) {
answer += ' '
}
}
return answer;
}
function solution(n)
{
let answer =0
let intarr=[]
intarr=n.toString()
for(i=0; i<intarr.length; i++){
answer += parseInt(intarr[i])
}
return answer;
}
n.toString()을 하게되면 정수를 예쁘게 문자열로 변환할 수 있다!
자릿수 더하기는 형변환 후에 연산이 되어야하기 때문에
answer를 정수로 선언 후 += 해주었다.
function solution(n) {
var answer = [];
let narr= n.toString()
for(i=narr.length-1; i>=0; i--){
answer.push(Number(narr[i]))
}
return answer;
}
배열에 인덱스값을 배정해서 각각 넣어주는 것이 Push
+=로 문자열을 더하면 하나의 문장이 하나의 인덱스로
저장(물론 문자열이기 때문에 2차원 배열로 표현은 가능하쥐)
function solution(n) {
let answer =""
let intarr=[]
intarr=n.toString().split("").sort((a,b) => b-a)
for(i=0; i<intarr.length; i++){
answer += intarr[i]
}
return Number(answer)
}
split와 sort 함수의 개념이 조금씩 자리잡혀가는 것 같다. 물논 나는 for와 if가 가장 먼저 떠오르지만....
function solution(n) {
let answer=0
let logn = Math.sqrt(n)
if(logn%1==0){
answer = (logn+1)*(logn+1)
}else answer=-1
return answer
}
내장함수가 채고시다
Math.sqrt는 입력된 정수의 제곱근을 리턴해주는 함수
만약에 제곱근이라면 소숫점 없이 딱 떨어지기 때문에
%1로 나누었을때 0이라면 제곱근으로 판단하여
+1값을 더해주고 다시 곱해줬다.
function solution(arr) {
let answer = Math.min.apply(null, arr)
if(arr.length ==1){
arr[0] = -1
}else{
for(i=0; i<arr.length; i++){
if(arr[i]===answer){
console.log(i)
arr.splice(i, 1)
}
}
}
return arr;
}
내장함수가 채고시다 2222222
Math.min.apply()는 Math.min에 있는 함수를 호출하는 방식이다. Null은 this를 의미하고 위 문법에서는 불필요한 this이기 때문에 순회하여 값을 추출할 arr값만 기재했다.
function solution(num) {
let count=0
while(500){
if(num===1) break
if(num%2==0){
num = num/2
count++
}else{
num = (num*3)+1
count++
}
}
if(count>=500){
count= -1
}
return count
}
와.... 오랜만에 while을 써보네
break를 자꾸 잘못 걸어서 무한루프되고
VS코드 멈추고 난리 ㅋㅋㅋ
function solution(n) {
let answer=[]
let ishashade = 0;
let x=n.toString()
for(i=0; i<x.length; i++){
answer.push(Number(x[i]))
}
ishashade = answer.reduce((a,b) => a+b)
if(!(x%ishashade==0)) return false
else return true
}
function solution(n) {
let change3 = n.toString(3)
let answer=""
for(i=change3.length-1; i>=0; i--){
answer += Number(change3[i])
}
answer=parseInt(answer,3)
return answer
}
paseInt 함수가 단순히 정수변환 함수라고만 생각했는데
10진법으로 변환해주는 함수라는 것을 알게됐다
놀랄 노짜....
그리고 Sting 함수도 다른 진법으로 스트링자료 형변환할 수 있다는 사실....!!
3진법 뒤집기 걱정 좀 됐는데 생각보다 내장함수가 잘 구현되어있어서 다행이었다.