알고리즘
백준 조건문
비루블
2022. 8. 8. 06:41
포기2525
1330 두 수 비교하기
입력
1 2
출력
<
코드
var fs=require('fs');
var input=fs.readFileSync('/dev/stdin').toString().split(" ")
const a = parseInt(input[0]);
const b = parseInt(input[1]);
if (a > b) {
console.log(">");
} else if (a < b) {
console.log("<");
} else {
console.log("==");
}
9498 시험 성적
입력
100
출력
A
코드
var fs=require('fs');
var input=fs.readFileSync('/dev/stdin').toString()
const a = parseInt(input);
if (a >= 90 ) {
console.log("A");
}
else if ( a >= 80 ) {
console.log("B");
}
else if ( a >= 70){
console.log("C");
}
else if ( a >= 60){
console.log("D")
}
else {
console.log("F");
}
주어진 입력이 1개라는 것.(split함수 사용x, input에 인덱스 x)
else if는 순차적으로 들어가는 것이기 때문에, 조건을 <= a <= 이런식으로 안걸어도 됨.
2753 윤년
입력
2000
출력
1
코드
var fs=require('fs');
var input=fs.readFileSync('/dev/stdin').toString()
const a = parseInt(input);
if(a % 4 === 0){
if(a % 100 !== 0 ){
console.log("1")
}
else if( a % 400 === 0 ){
console.log("1")
}
else{
console.log("0")
}
}
else{
console.log("0")
}
조건문 입력시 요령은 큰조건에서 작은 조건으로 줄여나가는 것이라는 것을 깨달음
14681 사분면 고르기
입력
12
5
출력
1
코드
var fs=require('fs');
var [a, b]=fs.readFileSync(0).toString().trim().split('\n');
if(a > 0 && b > 0){
console.log("1");
}
else if(a < 0 && b > 0){
console.log("2");
}
else if(a < 0 && b < 0){
console.log("3");
}
else{
console.log("4")
}
2884 알람 시계
입력
10 10
0 30
출력
9 25
23 45
코드
var fs = require('fs');
var input = fs.readFileSync('/dev/stdin').toString().split(' ');
var a = parseInt(input[0]);
var b = parseInt(input[1]);
if( a == 0 && b < 45){
console.log(23, b+15)
}
else if( b >= 45 ){
console.log(a, b-45)
}
else{
console.log(a-1, b+15)
}
2525 오븐 시계
입력
14 30
20
출력
14 50
코드
var fs = require('fs');
var input = require('fs').readFileSync('/dev/stdin').toString().split('\n');
let hour = parseInt(input[0].split(' ')[0]);
let minute = parseInt(input[0].split(' ')[1]);
let time = parseInt(input[1]);
minute = minute + time
if(minute >= 60){
hour += Math.floor(minute/60);
minute = minute % 60;
if(hour >= 24){
hour -= 24
}
}
console.log(hour, minute);
2480 주사위 세개
입력
3 3 6
출력
1300
코드
var fs = require('fs');
var input = fs.readFileSync('/dev/stdin').toString().split(' ');
var a = parseInt(input[0]);
var b = parseInt(input[1]);
var c = parseInt(input[2]);
const d = [a, b, c].sort();
if (d[0] === d[1] && d[1] === d[2]){
console.log(10000 + 1000 * d[0]);
}
else if((d[0] === d[1] || d[1] === d[2])){
console.log(1000 + 100 * d[1]);
}
else{
console.log(d[2] * 100);
}
sort로 오름차순으로 바꿈
다 같을때, 2개만 같을때, 다 다를때로 나누어 코드 구성
다른사람 풀이
const fs = require("fs");
const filePath = process.platform === "linux" ? "/dev/stdin" : "./input.txt";
let input = fs.readFileSync(filePath).toString().split("\n");
input = input[0]
.split(" ")
.map((item) => +item)
.sort((a, b) => a - b);
let A = input[0];
let B = input[1];
let C = input[2];
if (A === B && B === C) console.log(10000 + 1000 * A);
else if (A === B || B === C) console.log(1000 + 100 * B);
else console.log(C * 100);