✏️ 𝗔𝗹𝗴𝗼𝗿𝗶𝘁𝗵𝗺
[자료구조(참고)] [BJ11656] 접미사 배열
🚩 문제 설명 https://www.acmicpc.net/problem/11656 11656번: 접미사 배열 첫째 줄에 문자열 S가 주어진다. S는 알파벳 소문자로만 이루어져 있고, 길이는 1,000보다 작거나 같다. www.acmicpc.net ⏱️ 시간 복잡도 ▪ 문자열의 길이를 N이라고 가정한다면, ▪ 시간복잡도는 O(N)이라고 할 수 있다. ◾ 문자열의 모든 접미사를 출력하는 문제 ◾ 사전순으로 정렬하여 출력해야 한다. ✅ 입출력 1) 문자열 S가 주어진다. return ➡️ 모든 접미사를 정렬한 다음 출력 ✔️ 예제 1 baekjoon aekjoon baekjoon ekjoon joon kjoon n on oon 📑 문제 풀이 with 파이썬 (Python) import sys line = sy..
[자료구조(참고)] [BJ10824] 네 수
🚩 문제 설명 https://www.acmicpc.net/problem/10824 10824번: 네 수 첫째 줄에 네 자연수 A, B, C, D가 주어진다. (1 ≤ A, B, C, D ≤ 1,000,000) www.acmicpc.net ⏱️ 시간 복잡도 ▪ 각각의 자연수의 최대 크기는 100만에 해당한다. ▪ 이어붙이는 데 O(1)의 시간복잡도가 걸린다. ▪ 그리고 두 개의 합을 구하는데 O(1)의 시간복잡도가 걸린다. ▪ 따라서 시간복잡도는 O(1)로 해결할 수 있다. ◾ A, B, C, D 네 수가 주어지고 해당 수를 두개씩 이어붙인다. ◾ 이어붙인 AB와 CD의 합을 구하여 출력하는 문제. ✅ 입출력 1) 네 자연수가 공백을 기준으로 주어진다. return ➡️ AB와 CD의 합을 구하여 출력한다..
[자료구조(참고)] [BJ11655] ROT13
🚩 문제 설명 https://www.acmicpc.net/problem/11655 11655번: ROT13 첫째 줄에 알파벳 대문자, 소문자, 공백, 숫자로만 이루어진 문자열 S가 주어진다. S의 길이는 100을 넘지 않는다. www.acmicpc.net ⏱️ 시간 복잡도 ▪ 문자열의 크기가 N이라고 가정한다면, 시간 복잡도는 O(N)에 해당한다. ◾ ROT13 암호화 카이사르 암호의 일종 영어 알파벳을 13글자씩 밀어서 만든다. 해당 암호문을 복호화 할려면 다시 ROT13 하면 된다. ROT13은 알파벳 대/소문자에만 적용할 수 있다. ◾ 만약 알파벳이 아닌 숫자가 나온다면 원래 글자 그대로 남아 있어야 한다. ◾ 주어지는 문자열을 ROT13 에 맞게 암호화 하는 문제. ✅ 입출력 1) 암호화 해야할 ..
[자료구조(참고)] [BJ2743] 단어 길이 재기
🚩 문제 설명 https://www.acmicpc.net/problem/2743 2743번: 단어 길이 재기 알파벳으로만 이루어진 단어를 입력받아, 그 길이를 출력하는 프로그램을 작성하시오. www.acmicpc.net ⏱️ 시간 복잡도 ▪ 문자열의 길이가 N이라고 가정하면 시간복잡도는 O(N)에 해당한다. ▪ 하지만 len() 함수 사용하면 O(1)로 가능하다. ◾ 문자열의 길이를 구하는 문제. ✅ 입출력 1) 문자열이 주어진다. return ➡️ 문자열의 길이를 출력한다. ✔️ 예제 1 pulljima 8 📑 문제 풀이 with 파이썬 (Python) import sys line = sys.stdin.readline().strip() print(len(line)) 💬 Point ➡️ len() 함수 ..
[자료구조(참고)] [BJ10820] 문자열 분석
🚩 문제 설명 https://www.acmicpc.net/problem/10820 10820번: 문자열 분석 문자열 N개가 주어진다. 이때, 문자열에 포함되어 있는 소문자, 대문자, 숫자, 공백의 개수를 구하는 프로그램을 작성하시오. 각 문자열은 알파벳 소문자, 대문자, 숫자, 공백으로만 이루어져 있 www.acmicpc.net ⏱️ 시간 복잡도 ▪ 주어지는 문장의 갯수가 N이라면 시간복잡도는 O(N)이라고 할 수 있다. ◾ 소문자 / 대문자 / 숫자 / 공백의 갯수를 출력하는 문제 ◾ 문자열 확인 islower() ➡️ 소문자 인가 아닌가 isupper() ➡️ 대문자 인가 아닌가 isdigit() ➡️ 숫자인가 아닌가 isspace() ➡️ 공백인가 아닌가 ✅ 입출력 1) 첫번째 줄부터 N번째 줄 까..
[자료구조(참고)] [BJ10809] 알파벳 찾기
🚩 문제 설명 https://www.acmicpc.net/problem/10809 10809번: 알파벳 찾기 각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출 www.acmicpc.net ⏱️ 시간 복잡도 ▪ 문자열의 크기가 N이라면 시간복잡도는 O(N)에 해당한다. ◾ 문자열이 주어지고 각 문자열의 알파벳이 어디서 등장하는지 출력하는 문제 ✅ 입출력 1) 문자열 S가 주어진다. return ➡️ 문자열의 각 알파벳의 등장위치를 출력한다. ✔️ 예제 1 baekjoon 1 0 -1 -1 2 -1 -1 -1 -1 4 3 -1 -1 7 5 -1 -1 -1 -..