[BaekJoon] #2743 - 단어 길이 재기 [Java][C++]
문제 링크 1. 아이디어 주어진 문자열의 길이를 출력하는 문제로 문자열의 길이를 반환하는 함수를 활용하면 간단하게 해결할 수 있다. 2. 복잡도 접근 시간 공간 풀이 $O(1)$ $O(N)$ ($N$ = s의 ...
문제 링크 1. 아이디어 주어진 문자열의 길이를 출력하는 문제로 문자열의 길이를 반환하는 함수를 활용하면 간단하게 해결할 수 있다. 2. 복잡도 접근 시간 공간 풀이 $O(1)$ $O(N)$ ($N$ = s의 ...
문제 링크 1. 아이디어 주어진 입력 그대로 출력하는 문제로 입력이 얼마나 주어지는지는 알 수 없다. EOF를 활용해서 읽을 수 없을 때까지 읽으며 출력하면 된다. 2. 복잡도 접근 시간 공간 풀이 $O(T)$ $O(1)$ ...
문제 링크 1. 아이디어 주어진 글자의 아스키 코드 값을 출력하는 문제로 정수 타입으로 변환하면 간단하게 해결할 수 있다. 2. 복잡도 접근 시간 공간 풀이 $O(1)$ $O(1)$ 3. 코드 풀이 [Ja...
문제 링크 1. 아이디어 주어진 입력에서 단어의 개수를 구하는 간단한 문제다. 각 단어를 공백으로 구분해 토큰처럼 생각해서 해결했다. 2. 복잡도 접근 시간 공간 풀이 $O(N)$ $O(N)$ ($N$ = 입력...
문제 링크 1. 아이디어 주어진 문자열의 양 끝에 포인터를 위치시킨 후 한 칸씩 이동하며 서로 가리키는 문자가 일치하는지 비교하는 방식으로 해결해도 되고, 주어진 문자열을 뒤집은 후 원본 문자열과 일치하는지 비교하는 방식으로 해결해도 된다. 2. 복잡도 접근 시간 공간 ...
문제 링크 1. 아이디어 현재 위치 $(x,\ y)$에 대해 가장 가까운 직사각형 경계선까지의 거리를 구하는 문제다. 왼쪽 아래 꼭짓점은 $(0,\ 0)$, 오른쪽 위 꼭짓점은 $(w,\ h)$에 있으므로, 현재 위치에서 왼쪽 경계선까지의 거리는 $x$, 오른쪽 경계선까지의 거리는 $w - x$, 위쪽 경계선까지의 거리는 $h - y$, 아...
문제 링크 1. 아이디어 주어진 문자열에 대해 알파벳 소문자 각각이 등장하지 않으면 -1, 등장하면 가장 처음 등장한 인덱스를 출력해야 한다. 정수와 문자 간 타입 변환을 활용하면 해결할 수 있다. 2. 복잡도 접근 시간 공간 풀이 $O(...
문제 링크 1. 아이디어 먼저 삼각형이 될 수 있는지 없는지 조건문으로 판단한 후 삼각형이 될 수 있으면 정삼각형인지, 이등변삼각형인지 판단하는 방식으로 해결했다. 삼각형이 되려면 세 각의 합이 $180^\circ$여야 하고, 정삼각형은 세 각이 모두 $60^\circ$, 이등변삼각형은 두 각이 같은 경우가 존재하면 된다. 2. 복잡도...
문제 링크 1. 아이디어 가능한 모든 쌍의 GCD의 합을 구하는 문제로 유클리드 호제법을 활용하면 간단하게 해결할 수 있다. 가능한 쌍은 2중 반복문을 활용하면 되며 이때 같은 쌍을 중복으로 세지 않게 주의해야 한다. 추가로 쌍이 최대 $4{,}950$개이고 GCD가 최대 $10^6$이므로 GCD의 합이 정수 타입의 범위를 넘어 오버플로우가...
문제 링크 1. 아이디어 각 테스트 케이스마다 두 자연수의 최소공배수를 출력하는 문제로 최대공약수를 구할 수 있는 유클리드 호제법을 활용하면 간단하게 해결할 수 있다. 최소공배수는 두 수의 곱을 최대공약수로 나누면 된다. 입력값이 최대 $10^6$이므로 최소공배수는 최대 $10^{12}$까지 커져 정수 타입의 오버플로우에 주의해야 한다. ...