분류 전체보기326 [BOJ_2875] 대회 or 인턴 문제 링크: https://www.acmicpc.net/problem/2875 2875번: 대회 or 인턴 첫째 줄에 N, M, K가 순서대로 주어진다. (0 ≤ M ≤ 100, 0 ≤ N ≤ 100, 0 ≤ K ≤ M+N), www.acmicpc.net 참고용 풀이: Review: 문제를 잘못 해석하여 2번이나 틀리고 다른 사람의 풀이를 참고했다. 내가 잘못 생각했던 것은 인턴십에 참여하는 k명이 혼성으로 구성될 수 없고, 남학생으로 k명이 구성되거나 여학생으로 k명으로 구성되어야 한다고 생각했다. 하지만 k명이 꼭 동성으로 구성되어야 한다는 부분은 없는데 문제를 제대로 읽지 못해서 풀이가 제대로 진행되지 못했던 것 같다. 앞으로는 쉬워 보이는 문제라도 문제에서 답으로 무엇을 요구하고, 주어진 전제조건.. 알고리즘 문제 풀이: 파이썬/BOJ 2021. 10. 17. [BOJ_2822] 점수 계산 문제 링크: https://www.acmicpc.net/problem/2822 2822번: 점수 계산 8개 줄에 걸쳐서 각 문제에 대한 참가자의 점수가 주어진다. 점수는 0보다 크거나 같고, 150보다 작거나 같다. 모든 문제에 대한 점수는 서로 다르다. 입력으로 주어지는 순서대로 1번 문제, 2번 문 www.acmicpc.net 내 풀이: Review: 코드에서 리스트 컴프리헨션의 for 반복문의 range를 8로 설정했는데, 이 부분을 range(1, 9)로 변경하면 튜플에서 1을 더해주는 부분(idx + 1)을 생략할 수 있다. Idea: 주어진 점수 데이터중에서 상위 5개의 데이터로 합계를 구하고, 데이터들의 입력받은 순서를 구할 수 있는 문제이다. 알고리즘 문제 풀이: 파이썬/BOJ 2021. 10. 12. [프로그래머스] N개의 최소공배수 문제 링크: https://programmers.co.kr/learn/courses/30/lessons/12953 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내 풀이: Review: 파이참에서 math 라이브러리의 lcm() 함수를 이용해서 단 두 줄만에 문제를 풀었으나 프로그래머스에서는 해당 라이브러리를 인식하지 못했다. 실행결과를 보니 프로그래머스의 파이썬 버전은 3.8인데, 해당 함수는 3.9 버전부터 추가된 것이라 사용하지 못한 것 같다. 그래서 최소공배수를 구하는 함수를 직접 만들어서 해당 문제를 해결했다. 그리고 최대공약수를 구하는 함수도 .. 알고리즘 문제 풀이: 파이썬/Programmers 2021. 10. 8. [프로그래머스] 짝지어 제거하기 문제 링크: https://programmers.co.kr/learn/courses/30/lessons/12973 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내 풀이: Review: 어제 '괄호 회전하기' 문제를 풀고 스택을 활용한 접근법을 조금이나마 익힌 것 같다. 내 풀이에서 stack에 문자열의 첫 번째 원소를 초기화할 때 미리 넣어주는데, 다시 생각해보니 해당 부분을 굳이 넣을 필요가 없던 것 같다. Idea: 입력값으로 주어진 문자열의 길이가 1,000,000으로 크기가 매우 크기 때문에 for 반복문을 2번 사용한다면 무조건 시간 초과가 날.. 알고리즘 문제 풀이: 파이썬/Programmers 2021. 10. 8. [프로그래머스] 괄호 회전하기 문제 링크: https://programmers.co.kr/learn/courses/30/lessons/76502 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내 풀이: Review: 알고리즘 스터디에서 급하게 선정해서 풀어봤던 문제이다. 레벨 2의 문제라서 조금 걱정했지만 다행히 스터디 시간 안에 풀 수 있었다. 올바른 괄호인지 확인하는 부분에서 stack에서 슬라이싱으로 원소를 읽지 말고, pop()으로 직접 꺼내서 확인을 했더라면 코드를 좀 더 짧고 간결하게 구현할 수 있었을 것 같다. 또, 마지막 if 문에서 stack의 비어있지 않을 때 Fal.. 알고리즘 문제 풀이: 파이썬/Programmers 2021. 10. 7. [프로그래머스] 주식가격 문제 링크: https://programmers.co.kr/learn/courses/30/lessons/42584 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내 풀이: 참고용 풀이: Review: 참고용 풀이로 프로그래머스에서 두 번째로 많은 '좋아요'를 받은 풀이를 가져왔다. 첫 번째로 많은 '좋아요'를 받은 풀이는 효율성에서 내 풀이보다 오랜 시간이 걸려서 제외했다. 문제의 입력값이 배열로 주어져서 list로 풀어야겠다는 생각만 해서 deque로 바꾸는 것은 생각을 못 했다. 이 문제가 프로그래머스가 아닌 백준 문제였다면 입력 처리도 해야하기 때문.. 알고리즘 문제 풀이: 파이썬/Programmers 2021. 10. 3. [BOJ_15829] Hashing 문제 링크: https://www.acmicpc.net/problem/15829 15829번: Hashing APC에 온 것을 환영한다. 만약 여러분이 학교에서 자료구조를 수강했다면 해시 함수에 대해 배웠을 것이다. 해시 함수란 임의의 길이의 입력을 받아서 고정된 길이의 출력을 내보내는 함수로 정 www.acmicpc.net 내 풀이: 참고용 풀이: Review: 내 풀이에서는 리스트 컴프리헨션과 딕셔너리 컴프리헨션을 이용해서 풀이했다. 알고리즘 문제를 풀면서 리스트 컴프리헨션은 많이 이용했지만 딕셔너리 컴프리헨션은 자주 이용하지 않아 사용법을 복기하는 의미에서 사용하였다. 참고용 풀이에서는 알파벳에 해당하는 고유번호(a)를 구하기 위해 ord() 내장 함수를 사용했다. ord('a')의 값은 97이므로.. 알고리즘 문제 풀이: 파이썬/BOJ 2021. 9. 24. [BOJ_2231] 분해합 문제 링크: https://www.acmicpc.net/problem/2231 2231번: 분해합 어떤 자연수 N이 있을 때, 그 자연수 N의 분해합은 N과 N을 이루는 각 자리수의 합을 의미한다. 어떤 자연수 M의 분해합이 N인 경우, M을 N의 생성자라 한다. 예를 들어, 245의 분해합은 256(=245+2+4+5)이 www.acmicpc.net 내 풀이: 참고용 풀이: Review: 내 풀이에서는 분해합에 대한 모든 생성자를 구해서 리스트 nums에 저장하고, 내장 함수 min()을 이용해 가장 작은 생성자를 출력하고, 생성자 없다면 0을 출력해서 문제를 해결했다. 참고용 풀이에서는 모든 생성자를 구하지 않고, 분해합을 만드는 생성자가 구해지면 반복을 종료해 불필요한 계산을 줄였다. 그리고 생성자.. 알고리즘 문제 풀이: 파이썬/BOJ 2021. 9. 24. [BOJ_17413] 단어 뒤집기 2 문제 링크: https://www.acmicpc.net/problem/17413 17413번: 단어 뒤집기 2 문자열 S가 주어졌을 때, 이 문자열에서 단어만 뒤집으려고 한다. 먼저, 문자열 S는 아래와과 같은 규칙을 지킨다. 알파벳 소문자('a'-'z'), 숫자('0'-'9'), 공백(' '), 특수 문자('')로만 이루어져 www.acmicpc.net 내 풀이: Review: 문제의 테스트 케이스가 많고, 해당 테스트 케이스만 통과하면 문제를 맞을 수 있는 것 같다. 크게 어려운 문제는 아니고 경우의 수를 나눠서 해당 경우를 어떻게 처리하면 될지 생각해보면 짧은 시간 안에 구현할 수 있는 문제였다. Idea: 두 개의 리스트와 파이썬의 내장함수를 이용해서 풀이했다. extend()를 사용하는 것은 처.. 알고리즘 문제 풀이: 파이썬/BOJ 2021. 9. 24. [BOJ_5397] 키로거 문제 링크: https://www.acmicpc.net/problem/5397 5397번: 키로거 첫째 줄에 테스트 케이스의 개수가 주어진다. 각 테스트 케이스는 한줄로 이루어져 있고, 강산이가 입력한 순서대로 길이가 L인 문자열이 주어진다. (1 ≤ L ≤ 1,000,000) 강산이가 백스페이스를 입 www.acmicpc.net 내 풀이: Review: 문제를 풀고 나면 항상 백준에서 다른 사람의 풀이와 내 풀이를 비교해본다. 이 문제도 다른 사람의 풀이를 확인했는데, 앞에서 3페이지 정도만 확인했는데도 패캠의 알고리즘 강의에서 나온 풀이와 거의 똑같았다. 변수명도 안바꾼 풀이도 많았고, 변수명을 아주 조금만 수정하여 제출한 풀이가 생각보다 많아서 다른 사람의 풀이를 분석하려는 나에게는 조금 아쉬움이 .. 알고리즘 문제 풀이: 파이썬/BOJ 2021. 9. 22. 이전 1 ··· 23 24 25 26 27 28 29 ··· 33 다음