https://www.acmicpc.net/problem/11653 11653번: 소인수분해 첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다. www.acmicpc.net 사용언어 : python 알고리즘 : 수학, 정수론, 소수판정 Solved.ac Tier : Bronze I python 코드 1. 문제 정리 간단하게 에라스토테네스의 체 알고리즘을 활용하여 풀면 되는 문제이다. 소수 찾기 알고리즘을 사용하면 간단하게 해결할 수 있는 문제이다. 나는 soinsoo라는 함수를 재귀를 활용하여 해결 하였다. def soinsoo(k): for i in range(2, k): if k % i == 0: ans.append(i) soinsoo(int(k / i)) return 2부터 k까지..
https://www.acmicpc.net/problem/5355 5355번: 화성 수학 겨울 방학에 달에 다녀온 상근이는 여름 방학 때는 화성에 갔다 올 예정이다. (3996번) 화성에서는 지구와는 조금 다른 연산자 @, %, #을 사용한다. @는 3을 곱하고, %는 5를 더하며, #는 7을 빼는 연산 www.acmicpc.net 사용언어 : python 알고리즘 : 수학, 구현 ,사칙연산 Solved.ac Tier : Bronze II 간단하게 파이썬 적응을 위해 풀어 본 문제이다. python 코드 1. 문제 정리 입력을 받을 줄 안다면 쉽게 해결 가능한 문제이다. 값들을 받아 문제에서 준 대로 계산 하면 된다. 마지막 출력에 format을 사용하여 소수점 둘째자리까지 강제로 출력하도록 만들었다. ..
https://www.acmicpc.net/problem/1158 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net 사용언어 : node.js 알고리즘 : 자료구조, 큐 Solved.ac Tier : Silver IV node.js 코드 1. 문제 정리 선입 선출 방식의 큐를 사용하면 쉽게 해결 할 수 있는 문제이다. 반복문을 사용하여 계속 돌면서 shift로 맨 앞의 값을 뺀 뒤, 반복 횟수가 K의 배수인 경우엔 값을 다시 넣지 않고 아닌 경우엔 그냥 값을 넣는 방식으로 큐를 사용하여 문제를 해결 하였다. 2. 완성 코드 const filePath = process.platform === "linux..
https://www.acmicpc.net/problem/4949 4949번: 균형잡힌 세상 하나 또는 여러줄에 걸쳐서 문자열이 주어진다. 각 문자열은 영문 알파벳, 공백, 소괄호("( )") 대괄호("[ ]")등으로 이루어져 있으며, 길이는 100글자보다 작거나 같다. 각 줄은 마침표(".")로 끝난다 www.acmicpc.net 사용언어 : node.js 알고리즘 : 자료구조, 문자열, 스택 Solved.ac Tier : Silver IV node.js 코드 1. 문제 정리 스택의 기본 문제인 괄호 문제이다. 문제가 굉장히 간단하다. 각 괄호의 짝이 맞으면 yes를 출력 아니면 no를 출력하면 된다. 왼쪽 괄호만 나올 때, 오른쪽 괄호만 나올 때 같은 예외 처리를 신경 써서 코드를 짜면 해결할 수 있..
https://www.acmicpc.net/problem/2164 2164번: 카드2 N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가 www.acmicpc.net 사용언어 : node.js 알고리즘 : 자료구조, 큐 Solved.ac Tier : Silver IV node.js 코드 1. 문제 정리 간단하게 사진 한장으로 정리되는 문제이다. 항상 맨 위에 있는 카드는 없애고, 삭제되고 난 뒤 젤 위에 있는 카드를 맨 아래로 보내면 되는 문제이다. 위에 카드는 사라지고 아래 카드는 들어오는 구조는 바로 큐이다. 선입 선출 방식을 이용하여 먼저 코드를 짜보았다..
https://www.acmicpc.net/problem/10845 10845번: 큐 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 사용언어 : node.js 알고리즘 : 자료구조, 큐 Solved.ac Tier : Silver IV node.js 코드 1. 문제 정리 기존에 우리가 쉽게 아는 큐와 같은 문제이다. 이미 C#과 C로 풀어 본 적 있는 문제이지만, 주 언어가 된 JS엔 자료구조가 없기 때문에 직접 구현해야 한다. 따라서 앞으로 상위 문제를 풀 때 필요한 자료구조인 스택, 큐, 덱 같은 기초부터 시..
https://www.acmicpc.net/problem/10828 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 사용언어 : node.js 알고리즘 : 자료구조, 스택 Solved.ac Tier : Siver IV 소마 준비를 위해 알고리즘 공부를 시작하려 한다. 기초 자료구조부터 탄탄하게 다져갈 생각이다. node.js 코드 1. 문제 정리 기존에 우리가 쉽게 아는 스택과 같은 문제이다. 이미 C#과 C로 풀어 본 적 있는 문제이지만, 주 언어가 된 JS엔 자료구조가 없기 때문에 직접 구..
https://www.acmicpc.net/problem/11656 11656번: 접미사 배열 첫째 줄에 문자열 S가 주어진다. S는 알파벳 소문자로만 이루어져 있고, 길이는 1,000보다 작거나 같다. www.acmicpc.net 사용언어 : node.js 알고리즘 : 문자열, 정렬 Solved.ac Tier : Siver IV node.js 코드 1. 문제 정리 접미사 배열 문제를 접근할 때 뒤에서 부터 하나하나 자른 문자들을 배열에 넣고, 배열에 있는 값들을 JS 내장함수인 sort를 이용하여 간단하게 해결한 문제이다. 2. 완성 코드 const filePath = process.platform === 'linux' ? '/dev/stdin' : 'ans.txt'; const input = requ..