반응형

알고리즘 97

[JS] 알고리즘 기초 정복 15번 - 가운데 문자 출력

문제 15번 소문자로 된 단어(문자열)가 입력되면 그 단어의 가운데 문자를 출력하는 프로그램을 작성하세 요. 단 단어의 길이가 짝수일 경우 가운데 2개의 문자를 출력합니다. 🍄 입력설명 첫 줄에 문자열이 입력된다. 문자열의 길이는 100을 넘지 않습니다. 🍄 출력설명 첫 줄에 가운데 문자를 출력합니다. 🍄 입력예제 1 study 🍄 출력예제 1 u 🍄 입력예제 1 good 🍄 출력예제 1 oo 정답 코드 1) substring() 이용 - substr(시작 인덱스, 종료 인덱스 전) String.prototype.substring() function solution(s) { let answer; let mid = Math.floor(s.length / 2); if (s.length % 2 === 1) a..

알고리즘 2021.07.09

[JS] 알고리즘 기초 정복 13번 - 대소문자 변환

문제 13번 대문자와 소문자가 같이 존재하는 문자열을 입력받아 대문자는 소문자로 소문자는 대문자로 변환하여 출력하는 프로그램을 작성하세요. 🍄 입력설명 첫 줄에 문자열이 입력된다. 문자열의 길이는 100을 넘지 않습니다. 🍄 출력설명 첫 줄에 대문자는 소문자로, 소문자는 대문자로 변환된 문자열을 출력합니다. 🍄 입력예제 1 StuDY 🍄 출력예제 1 sTUdy 정답 코드 function solution(str) { let answer = ""; for (let x of str) { if (x === x.toUpperCase()) answer += x.toLowerCase(); else answer += x.toUpperCase(); } return answer; } let str = "StuDY"; co..

알고리즘 2021.07.09

[JS] 알고리즘 기초 정복 12번 - 대문자로 통일

문제 12번 대문자와 소문자가 같이 존재하는 문자열을 입력받아 대문자로 모두 통일하여 문자열을 출력 하는 프로그램을 작성하세요. 🍄 입력설명 첫 줄에 문자열이 입력된다. 문자열의 길이는 100을 넘지 않습니다. 🍄 출력설명 첫 줄에 대문자로 통일된 문자열이 출력된다. 🍄 입력예제 1 ItisTimeToStudy 🍄 출력예제 1 ITISTIMETOSTUDY 정답 코드 1) toLowerCase() 함수 이용 = 소문자 변환 function solution(str) { let answer = ""; for (let x of str) { if (x === x.toLowerCase()) answer += x.toUpperCase(); else answer += x; } return answer; } let st..

알고리즘 2021.07.09

[JS] 알고리즘 기초 정복 11번 - 대문자 찾기

문제 11번 한 개의 문자열을 입력받아 해당 문자열에 알파벳 대문자가 몇 개 있는지 알아내는 프로그램 을 작성하세요. 🍄 입력설명 첫 줄에 문자열이 입력된다. 문자열의 길이는 100을 넘지 않습니다. 🍄 출력설명 첫 줄에 대문자의 개수를 출력한다. 🍄 입력예제 1 KoreaTimeGood 🍄 출력예제 1 3 정답 코드 1) toUpperCase() 이용( = 대문자로 변환) function solution(str) { let answer = 0; for (let x of str) { if (x === x.toUpperCase()) answer++; //대문자로 바꾸는 함수, 소문자로 바꿀때는 toLowerCase() } return answer; } let str = "KoreaTimeGood"; con..

알고리즘 2021.07.09

[JS] 알고리즘 기초 정복 10번 - 문자 찾기

문제 10번 한 개의 문자열을 입력받고, 특정 문자를 입력받아 해당 특정문자가 입력받은 문자열에 몇 개 존재하는지 알아내는 프로그램을 작성하세요. 문자열의 길이는 100을 넘지 않습니다. 🍄 입력설명 첫 줄에 문자열이 주어지고, 두 번째 줄에 문자가 주어진다. 🍄 출력설명 첫 줄에 해당 문자의 개수를 출력한다. 🍄 입력예제 1 COMPUTERPROGRAMMING R 🍄 출력예제 1 3 정답 코드 1) for문 function solution(str, v) { let answer = 0; for (let x of str) { if (x === v) answer++; } return answer; } let str = "COMPUTERPROGRAMMING"; let v = "R"; console.log(so..

알고리즘 2021.07.03

[JS] 알고리즘 기초 정복 9번 - A를 #으로

문제 9번 대문자로 이루어진 영어단어가 입력되면 단어에 포함된 ‘A'를 모두 ’#‘으로 바꾸어 출력하는 프로그램을 작성하세요. 🍄 입력설명 첫 번째 줄에 문자열이 입력된다. 🍄 출력설명 첫 번째 줄에 바뀐 단어를 출력한다. 🍄 입력예제 1 BANANA 🍄 출력예제 1 B#N#N# 정답 코드 function solution(s) { let answer = s.replaceAll("A", "#"); // replace(/A/g, "#") 해도 가능 return answer; } let str = "BANANA"; console.log(solution(str)); //B#N#N# 출력 function solution(s) { let answer = ""; for (let x of s) { if (x === "..

알고리즘 2021.07.02

[JS] 알고리즘 기초 정복 8번 - 일곱난쟁이

문제 8번 왕비를 피해 일곱 난쟁이들과 함께 평화롭게 생활하고 있던 백설공주에게 위기가 찾아왔다. 일과를 마치고 돌아온 난쟁이가 일곱 명이 아닌 아홉 명이었던 것이다. 아홉 명의 난쟁이는 모두 자신이 "백설 공주와 일곱 난쟁이"의 주인공이라고 주장했다. 뛰어난 수학적 직관력을 가지고 있던 백설공주는, 다행스럽게도 일곱 난쟁이의 키의 합이 100이 됨을 기억해 냈다. 아홉 난쟁이의 키가 주어졌을 때, 백설공주를 도와 일곱 난쟁이를 찾는 프로그램을 작성하시 오. 🍄 입력설명 아홉 개의 줄에 걸쳐 난쟁이들의 키가 주어진다. 주어지는 키는 100을 넘지 않는 자연수이며, 아홉 난쟁이의 키는 모두 다르며, 가능한 정답이 여러 가지인 경우에는 아무거나 출력한다. 🍄 출력설명 입력된 순서대로 일곱 난쟁이의 키를 출력..

알고리즘 2021.07.02

[JS] 알고리즘 기초 정복 7번 - 10부제

문제 7번 서울시는 6월 1일부터 교통 혼잡을 막기 위해서 자동차 10부제를 시행한다. 자동차 10부제는 자동차 번호의 일의 자리 숫자와 날짜의 일의 자리 숫자가 일치하면 해당 자동차의 운행을 금지하는 것이다. 예를 들어, 자동차 번호의 일의 자리 숫자가 7이면 7일, 17일, 27일에 운행하지 못한다. 또한, 자동차 번호의 일의 자리 숫자가 0이면 10일, 20일, 30일에 운행하지 못한다. 여러분들은 일일 경찰관이 되어 10부제를 위반하는 자동차의 대수를 세는 봉사활동을 하려고 한다. 날짜의 일의 자리 숫자가 주어지고 7대의 자동차 번호의 끝 두 자리 수가 주어졌을 때 위반하는 자동차의 대수를 출력하는 프로그램을 작성하세요. 🍄 입력설명 첫 줄에는 날짜의 일의 자리 숫자가 주어지고 두 번째 줄에는 7..

알고리즘 2021.07.02

[JS] 알고리즘 기초 정복 6번 - 홀수

문제 6번 7개의 자연수가 주어질 때, 이들 중 홀수인 자연수들을 모두 골라 그 합을 구하고, 고른 홀수들 중 최소값을 찾는 프로그램을 작성하세요. 예를 들어, 7개의 자연수 12, 77, 38, 41, 53, 92, 85가 주어지면 이들 중 홀수는 77, 41, 53, 85이므로 그 합은 77 + 41 + 53 + 85 = 256 이 되고, 41 < 53 < 77 < 85 이므로 홀수들 중 최소값은 41이 된다. 🍄 입력설명 첫 번째 줄에 자연수 7개가 주어진다. 주어지는 자연수는 100보다 작다. 홀수가 한 개 이상 반드시 존재한다. 🍄 출력설명 첫째 줄에 홀수들의 합을 출력하고, 둘째 줄에 홀수들 중 최소값을 출력한다. 🍄 입력예제 1 12 77 38 41 53 92 85 🍄 출력예제 1 256 4..

알고리즘 2021.07.02