분류 전체보기275 백준15429🐨Odd Gnome(next 함수 활용법-조건에 맞는 첫번째 값) 이상한 노움 https://www.acmicpc.net/problem/15429시간 제한메모리 제한2 초512 MB문제마법과 마술의 전설에 따르면, 노움들은 '노움 구멍'이라고 알려진 지하 굴에서 살고 있습니다. 그들은 거기서 식물의 뿌리를 파서 먹으며, 정원 주변에 작은 흙더미를 만들어 상당한 피해를 끼칩니다.Mrs. W는 이 피해에 매우 짜증이 나서, 정기적으로 노움들을 울타리 너머로 던져서 정원에서 쫓아내야 합니다. 수가 너무 많아서 하나씩 던지는 것은 많은 노동이 필요합니다. 다행히도, 이 종족은 왕에게 매우 충실해서 각 그룹은 항상 왕을 따라갑니다. 다시 말해, 만약 그녀가 왕만 울타리 너머로 던진다면, 그 그룹의 다른 모든 노움들은 스스로 떠날 것입니다.그렇다면 Mrs. W는 어떻게 노움 그룹.. 2024. 11. 8. 백준1270🐨전쟁 - 땅따먹기 (보이어-무어 다수결 투표 알고리즘) 시간 제한이 긴 문제를 찾다가 보이어-무어 다수결 투표 알고리즘 (Boyer-Moore Majority Voting Algorithm) 이라는 것을 찾았다.보이어-무어 알고리즘 (Boyer-Moore String Search Algorithm)과는 다른 알고리즘입니다.보이어-무어 다수결 투표 알고리즘: 배열 내 과반수 원소 찾기 -한 번순회하면서 다수 원소 검토보이어-무어 알고리즘: 텍스트 내 패턴 검색- 건너뛰기를 통한 효율적 패턴매칭https://www.acmicpc.net/problem/1270전쟁 - 땅따먹기시간 제한10 초메모리 제한512 MB문제드디어 전쟁은 전면전이 시작되었고, 서로 땅을 따먹기 시작했다.현재 여러 지역은 한창 전쟁이 벌어지고 있는 상황인데, 어느 지역은 거의 전쟁이 마무리 .. 2024. 11. 7. 백준28932🐨Префиксы-суффиксы (접두사-접미사) 파이썬 str.startswith() Префиксы-суффиксы (접두사-접미사)시간 제한메모리 제한제출정답맞힌 사람정답 비율2 초1024 MB23618812878.049%문제기젯은 맥스가 똑똑한 개들만 좋아한다고 생각해서 똑똑한 책들을 읽기로 결심했습니다. 그 중 한 책에서 접두사와 접미사라는 개념을 배웠습니다.정의:접두사(Prefix): 문자열의 시작 부분과 일치하는 부분 문자열접미사(Suffix): 문자열의 끝 부분과 일치하는 부분 문자열예를 들어:"ab"는 문자열 "abacaba"의 접두사 중 하나입니다."25"는 문자열 "ab125"의 접미사입니다.기젯은 주인의 노트에서 어떤 수열을 발견했고, 그 중에서 한 수의 접두사 중 하나가 다른 수의 접미사 중 하나와 일치하는 수가 두 개(같은 수일 수도 있음) 이상 존재하는지 궁금해졌.. 2024. 11. 3. aks-소수-판별-알고리즘 AKS 소수 판별 알고리즘: Python 구현과 개요AKS(Agrawal–Kayal–Saxena) 알고리즘은 모든 자연수에 대해 다항 시간에 소수 여부를 판별할 수 있는 알고리즘으로, 수학 및 컴퓨터 과학에서 중요한 진전을 이룬 알고리즘이다. 특히 이 알고리즘은 주어진 수 $n$이 소수인지 합성수인지를 결정하는 최초의 다항 시간 알고리즘으로 주목받았다.이 글에서는 AKS 알고리즘의 원리와 Python을 사용한 간단한 구현 방법을 설명한다. AKS 알고리즘은 여러 단계를 통해 최종적으로 소수 여부를 판별하며, 그 주요 단계는 다음과 같다.AKS 알고리즘의 단계 요약거듭제곱 확인: 주어진 수 $n$이 특정 값 $a$와 $b$에 대해 $n = a^b$ 형태라면, 이는 합성수임을 의미하므로 소수 판별에서 제외한.. 2024. 10. 31. 🐨세그먼트-시브 segmented-sieve 세그먼트 시브(Segmented Sieve) 알고리즘 설명0. 기본 개념: 에라토스테네스의 체 복습에라토스테네스의 체는 소수를 빠르게 찾는 유명한 알고리즘이다. 다음은 간단한 구현 예시이다:def basic_sieve(n): is_prime = [True] * (n + 1) is_prime[0] = is_prime[1] = False for i in range(2, int(n ** 0.5) + 1): if is_prime[i]: for j in range(i * i, n + 1, i): is_prime[j] = False return [i for i in range(n + 1) if is_prime[i]]# 실.. 2024. 10. 31. 레드블랙트리 1. 운영체제에서의 활용Linux 커널의 Completely Fair Scheduler (CFS)프로세스 스케줄링에 레드-블랙 트리 사용실행 대기 중인 프로세스들을 virtual runtime 기준으로 정렬O(log n) 시간 복잡도로 가장 적은 runtime을 가진 프로세스 선택 가능실제 구현 코드:struct rb_root { struct rb_node *rb_node;};struct rb_node { unsigned long __rb_parent_color; struct rb_node *rb_right; struct rb_node *rb_left;} __attribute__((aligned(sizeof(long)))); 메모리 관리가상 메모리.. 2024. 10. 30. 백준15874🐨Caesar Cipher(bytearray()) https://www.acmicpc.net/problem/15874카이사르 암호시간 제한메모리 제한제출정답맞힌 사람정답 비율1 초64 MB134662354348.919%문제여러분들은 고대 로마의 정치인 율리우스 카이사르를 알고 있는가? 그는 정말 대단한 사람이다! 그는 로마의 독재자로도 유명하지만, 고대 암호의 대표격이라 할 수 있는 카이사르 암호(Caesar Cipher)를 만든 사람이기도 하다.카이사르 암호는 다음과 같은 방식으로 이뤄진다:알파벳으로 평문을 작성한다.해당 평문을 얼마나 밀지를 결정한다. 민다는 것은, 한 글자를 알파벳 상의 다음 글자로 바꾸는 것을 말한다. 예를 들어 네 번 밀기로 결정했다면, A는 E로, V는 Z로 바뀐다. 만약 Z를 한 번 더 민다면 A가 된다.원문A B C D E.. 2024. 10. 24. 푸른 낙동강 푸른낙동강 박다은강에 있는 다리를 건너요또르륵 비가 와요캄캄한 그림자 밑에여우 발자국이 있어요물 웅덩이가 생겨요강에는 오리가 있어요 2024. 10. 23. 백준11131🐨Balancing Weights https://www.acmicpc.net/problem/11131무게 균형 맞추기시간 제한메모리 제한제출정답맞힌 사람정답 비율1 초256 MB599486452884.962%문제공부를 시작한 이후로, 당신의 가족들은 당신이 매우 어려운 질문들에 대한 답을 알고 있기를 기대해 왔습니다. "내 컴퓨터에 무슨 문제가 있는 거야?", "해리 왕자의 새 여자친구 이름이 뭐야?", "내 새 바지 봤어?" 이제 당신의 할아버지가 새로운 문제를 찾아냈고, 당신은 또다시 인생의 가장 근본적인 질문 중 하나에 대한 답을 찾아야 하는 압박감에 시달리고 있습니다.당신은 20미터 길이의 지렛대가 정확히 중간에서 무게 없는 지지대로 균형을 잡고 있는 상황을 받았습니다. 여러 개의 무게추가 지렛대에 적용됩니다. 당신은 어느 쪽이 .. 2024. 10. 16. 백준24445🐨너비 우선 탐색(BFS)과 문제 풀이: 알고리즘 수업 https://www.acmicpc.net/problem/244451. 너비 우선 탐색(BFS)란?BFS 개념BFS는 그래프 탐색 알고리즘 중 하나로, 특정 시작 정점으로부터 인접한 모든 정점을 우선적으로 탐색한 뒤, 다음 인접한 정점들을 차례대로 탐색하는 방식이다. BFS는 주로 큐(queue) 자료구조를 사용하며, 그래프가 트리 구조일 때는 레벨별로 노드를 탐색하는 것과 유사하다.BFS의 주요 특징은 다음과 같다:최단 경로 탐색에 유용하다. 모든 간선의 가중치가 동일할 때 최단 경로를 찾을 수 있다.큐(queue) 자료구조를 사용하여 FIFO(First In First Out) 방식으로 정점을 탐색한다.그래프의 레벨 순 탐색이 이루어지며, 이를 통해 모든 정점을 빠짐없이 방문할 수 있다.BFS의 동작.. 2024. 10. 15. 백준15813🐨너의 이름은 몇 점이니?+15351🐨인생점수 https://www.acmicpc.net/problem/15813시간 제한 1 초 메모리 제한 128 MB문제소윤이는 성필이에게 단단히 화가 났다. 성필이가 자꾸 소윤이의 이름을 놀리는 것이다!극대노한 소윤이는 이름에 대해 많은 검색을 하던 도중 "이름점수"라는 것을 발견하게 된다. 이름 점수란, 알파벳 하나하나에 점수가 있고 이름에 들어가는 모든 알파벳 점수를 합한 것이라고 한다. 예를 들어 이름이 SUNG PIL 이라면,A = 1점, B = 2점, C = 3점, …, Z = 26점인 점수판에 따라 S(19)+U(21) + N(14) + G(7) + P(16) + I(9) + L(12) = 98점이다. (즉, 점수는 알파벳 순서이다)소윤이는 SO YOON이므로 S(19) + O(15) + Y(25).. 2024. 10. 15. 백준4655🐨Hangover https://www.acmicpc.net/problem/4655Hangover (브론즈 III)문제어떻게 카드로 쌓아 만든 탑이 테이블을 얼마나 멀리까지 돌출하게 만들 수 있을까?1장의 카드로는 최대 절반(1/2) 카드 길이만큼 돌출할 수 있다.(카드는 테이블에 수직으로 세워진다고 가정한다.)2장의 카드를 사용하면:첫 번째 카드가 두 번째 카드 위로 1/2 길이만큼 돌출한다.두 번째 카드가 테이블 위로 1/3 길이만큼 돌출한다.총 돌출 길이는 ( 1/2 + 1/3 = 5/6 ) 카드 길이이다.일반적으로 n장의 카드를 사용하면 ( 1/2 + 1/3 + 1/4 + … + 1/(n + 1) ) 카드 길이만큼 돌출할 수 있다.위쪽 카드부터 두 번째 카드를 1/2, 두 번째 카드는 세 번째 카드 위로 1/3, .. 2024. 10. 14. 이전 1 2 3 4 5 6 7 ··· 23 다음