function solution(a, b, c){
let answer;
if(a<b) {
answer=a;
} else {
answer=b;
} if(c<answer) {
answer=c;
}
return answer;
}
console.log(solution(6, 5, 11)); //5
입출력 예시대로 6, 5, 11로 예시를 해보자면
만약에 a<b
보다 작으면 a 반환, 그게 아니면 b 반환인데 6<5이므로 ➡️ 5가 answer에 담긴다.
그 뒤에 5 < 11가 성립하므로 반환되는 값은 5❗❗❗❗
function solution(a, b, c){
let answer="YES", max;
let total=a+b+c;
if(a>b) {
max=a;
} else { max=b;
} if(c>max) {
max=c;
} if(total-max<=max) {
answer="NO";
}
return answer;
}
console.log(solution(6, 7, 11)) //YES
console.log(solution(13, 33, 17)); //NO
일단 삼각형을 만들 수 있다가 성립하려면을 먼저 봐야 한다.
가장 긴 변의 값이 짧은 두 변의 길이 보다 커야 삼각형이 만들어진다를 알아야한다🤔
짧은 막대 둘의 합이 가장 긴 변 보다 작거나 같다 식을 세워주고
➡️ a>b에서 a가 더 작아서 else문에서 max=7,11>7이므로 max=11이다.
➡️ 24 - 11 = 13 이므로 "YES" 반환
13, 33, 17은
➡️ 13 + 33 + 17 - 33 <= 33가 성립하지 않으므로 "NO"반환
function solution(n){
let answer;
answer=Math.ceil(n/12);
return answer;
}
console.log(solution(178));
만약에 25명에게 나눠준다면 12개 * 2 이고 나머지가 1이기때문에,
한명에게 안 줄 수 없으니 답은 3다스 일 것이다.
나누기 한 몫에다가 + 1을 해줘도 좋을 거고, 소수점이 있으면 Math.ceil()
을 사용해서 올림을 해주는 방법도 있다.
function solution(n){
let answer=0;
for(let i=1; i<=n; i++){
answer=answer+i;
}
return answer;
}
console.log(solution(10));
이건 반복문을 이용해주면 된다.
1부터 n까지의 합이기때문에 for(let i=1; i<=n; i++)
라고 적어 줄 수 있고,
answer가 나오면 거기에 또 다시 반복문을 돌아서 i를 n까지 더해준다.
answer = answer + i
1 = 0 + 1
3 = 1 + 2
6 = 3 + 3
10 = 6 + 4
이런식으로 i = 10이 될 때 까지 쭈욱 도는 방법이다.
function solution(arr){
let answer, min=Number.MAX_SAFE_INTEGER;
for(let i=0; i<arr.length; i++){
if(arr[i]<min) min=arr[i];
}
answer=min;
return answer;
}
let arr=[5, 7, 1, 3, 2, 9, 11];
console.log(solution(arr));
min=Number.MAX_SAFE_INTEGER
최솟값을 처음에 제일 큰 값으로 초기화 시켜놓는다.
💡 그럼 무조건 첫번째 숫자는 최솟값으로 들어가게 된다.
for문을 도는데 0부터 배열의 길이까지 돌게 하고(6번까지 돌것이다)
if문으로 만약에 i라는 값이 지금까지 구한 최솟값보다 작더라 ➡️ 그럼 i가 최솟값
아니면 min=arr[0]
을 줘도 된다.