Algorithm
-
[알고리즘] 프로그래머스 3단계 - 다단계 칫솔판매Algorithm 2024. 4. 23. 10:32
프로그래머스 문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/77486 문제 설명 칫솔의 1개당 가격은 100원이며 각 판매원 마다 추천인이 있을 수 있고 없을 수 있는데 판매원이 갖을 수있는 추천인은 최대 한명이다. 판매원에게 추천인이 있다면 판매 금액의 10퍼센트를 자신의 추천인에게 줘야한다. 마찬가지로 10퍼센트를 받은 추천인에게도 추천인이 있다면 받은 금액의 10퍼센트를 추천인에게 줘야한다. 여기서 판매원과, 추천인, 판매한 사람, 판매 금액이 주어졌을때 최종적으로 판매원들의 각 매출을 배열로 리턴한다. 예시 enroll ["john", "mary", "edward", "sam", "emily", "jaimie", "tod", "y..
-
[알고리즘] 백준 - 명령프롬프트(문자열)Algorithm 2024. 4. 22. 16:39
백준 - 명령프롬프트 https://www.acmicpc.net/problem/1032 문제 시작 -> 실행 -> cmd를 쳐보자. 검정 화면이 눈에 보인다. 여기서 dir이라고 치면 그 디렉토리에 있는 서브디렉토리와 파일이 모두 나온다. 이때 원하는 파일을 찾으려면 다음과 같이 하면 된다. dir *.exe라고 치면 확장자가 exe인 파일이 다 나온다. "dir 패턴"과 같이 치면 그 패턴에 맞는 파일만 검색 결과로 나온다. 예를 들어, dir a?b.exe라고 검색하면 파일명의 첫 번째 글자가 a이고, 세 번째 글자가 b이고, 확장자가 exe인 것이 모두 나온다. 이때 두 번째 문자는 아무거나 나와도 된다. 예를 들어, acb.exe, aab.exe, apb.exe가 나온다. 이 문제는 검색 결과가 ..
-
[알고리즘] 백준 - 균형 잡힌 세상(스택)Algorithm 2024. 4. 18. 16:51
백준 - 균형 잡힌 세상 https://www.acmicpc.net/problem/4949 문제 세계는 균형이 잘 잡혀있어야 한다. 양과 음, 빛과 어둠 그리고 왼쪽 괄호와 오른쪽 괄호처럼 말이다. 정민이의 임무는 어떤 문자열이 주어졌을 때, 괄호들의 균형이 잘 맞춰져 있는지 판단하는 프로그램을 짜는 것이다. 문자열에 포함되는 괄호는 소괄호("()") 와 대괄호("[]")로 2종류이고, 문자열이 균형을 이루는 조건은 아래와 같다. 1. 모든 왼쪽 소괄호("(")는 오른쪽 소괄호(")")와만 짝을 이뤄야 한다. 2. 모든 왼쪽 대괄호("[")는 오른쪽 대괄호("]")와만 짝을 이뤄야 한다. 3. 모든 오른쪽 괄호들은 자신과 짝을 이룰 수 있는 왼쪽 괄호가 존재한다. 4. 모든 괄호들의 짝은 1:1 매칭만 ..
-
[알고리즘] 백준 - 좌표 정렬하기Algorithm 2024. 4. 17. 17:54
좌표 정렬하기 백준 https://www.acmicpc.net/problem/11650 문제 2차원 평면 위의 점 N개가 주어진다. 좌표를 x좌표가 증가하는 순으로, x좌표가 같으면 y좌표가 증가하는 순서로 정렬한 다음 출력하는 프로그램을 작성하시오. 제한 사항 첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에는 i번점의 위치 xi와 yi가 주어진다. (-100,000 ≤ xi, yi ≤ 100,000) 좌표는 항상 정수이고, 위치가 같은 두 점은 없다. 생각한 단계는1번째 사용자로 부터 입력을 받는다.2번째 정렬을 한다 x값이 같은 경우 y기준으로 정렬한다.3번째 출력한다. 코드 작성시 주의한 점과 배운점 1. 입력 데이터 수가 많기 때문에 Scanner보다..
-
[묘공단] 코딩 테스트 합격자 되기 - 스택, 큐Algorithm 2024. 4. 17. 17:32
책 제목 : 코딩 테스트 합격자 되기 자바편지은이 : 김희성 스택개념 : 쌓는다는 의미를 갖고있으며 먼저 입력한 데이터가 제일 늦게 나온다. FILO(first in last out) 선입후출로 동작하며스택에 데이터를 삽입하는 연산을 push 꺼내는 연산을 pop이라하며 최근 데이터를 반환하지만 꺼내지 않을 경우 peek을 사용 한다. 데이터의 순서와 상관없이 임의 접근을 위주로 작업시에는 배열을 사용하면 유리스택의 경우 최근에 사용한 데이터를 대상으로 뭔가 연산하는 경우 유리 스택의 개념은 쉽지만 어느 문제에 적용해야할지 모르기때문에 문제를 활용해서 적응해야한다. 스택 예제 문제 문제 설명 : 괄호가 정상적으로 닫히는지 여부를 판단 하여 정상 또는 비정상으로 출력예시 )..
-
[알고리즘] 프로그래머스 0단계 - 6번Algorithm 2024. 4. 16. 19:52
프로그래머스 문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/250128 문제 설명 가채점 점수가 담긴 배열과 실제 성적이 담긴 배열을 비교하여 같으면 "Same" 다르면 "Different"로 표시한 다음 배열로 리턴한다. 제한사항 1 ≤ numbers의 길이 = our_score의 길이 ≤ 10 1 ≤ numbers의 원소 ≤ 31 0 ≤ our_score의 원소 ≤ 100 our_score[i]는 numbers[i]번 학생이 가채점한 점수입니다. numbers는 중복된 원소를 가지지 않습니다. 2 ≤ score_list의 길이 ≤ 31 0 ≤ score_list의 원소 ≤ 100 score_list에는 실제 성적이 [1번 학생 성적,..
-
[알고리즘] 프로그래머스 0단계 - 7번Algorithm 2024. 4. 15. 21:58
프로그래머스 문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/250127?language=java 문제 설명 상우가 사용하는 가습기에는 "auto", "target", "minimum"의 세 가지 모드가 있습니다. 가습기의 가습량은 0~5단계로 구분되며 각 모드 별 동작 방식은 다음과 같습니다. 상우가 설정한 가습기의 모드를 나타낸 문자열 mode_type, 현재 공기 중 습도를 나타낸 정수 humidity, 설정값을 나타낸 정수 val_set이 주어질 때 현재 가습기가 몇 단계로 작동 중인지 return하도록 빈칸을 채워 solution 함수를 완성해 주세요. "auto" 모드 습도가 0 이상 10 미만인 경우 : 5단계 습도가 10 이..
-
[묘공단] 코딩 테스트 합격자 되기 챕터 1 ~ 5Algorithm 2024. 4. 14. 22:58
묘공단 코딩 스터디에서 책 정리 책 제목 : 코딩 테스트 합격자 되기 자바편 지은이 : 김희성 00. 코딩 테스트를 준비하기 전에 1. 문제를 풀고 꼭 다른 사람의 코드를 읽어 본다. 누군가의 코드를 읽는건 어렵지만 내 생각이 아닌 다른 사람의 풀이를 봐야 생각의 폭이 넓어진다. 2. 코딩 테스트가 어려운 이유는 아는것과 모르는 것이 명확하지 않아서이다. 그 점을 파악하기 위해서는 못푼다고 그만두지않고 기록해야한다. 그러면 왜 그런 코드를 작성했는지 의도가 분명해지고 파악이 쉽게된다. 3. 단 시간 공부로는 알고리즘의 수준을 올릴 수 없다. 4. 문제를 풀고 꼭 말로 설명할 줄 알아야 정확히 풀었다고 할 수 있다. 문제를 풀때 1번째 작업 ( 문제 분석 단계 -> 구현 X ) 문제를 동작 단위로 쪼개서 ..