1. 문제 상세
https://www.acmicpc.net/problem/24264

2. 문제 접근
이번 문제의 알고리즘은 입력값 n 이 있을 때 수행 횟수가 n2 번이 된다.
따라서 시간 복잡도는 O(N2) 이 된다.
입력 받은 n 의 제곱값과 최고차항의 차수인 2을 출력하자.
*여기서 주의할 사항이 있다.
입력받은 n 의 범위가 최대 500,000 이다.
따라서 출력 최대값이 50만의 제곱인 2500억이 될 수도 있는데, 변수 n 을 평소와 같이 int 형으로 선언할 시
범위를 벗어나버린다. (int 형 범위는 약 -21억~21억)
int 형이 아닌 long, long long 형으로 변수를 선언하여 사용하자.
3. 문제 풀이
#include <iostream>
using namespace std;
int main() {
long n;
cin >> n;
cout << n * n << endl << 2;
}
정수형(long 형) 변수 n 을 선언, cin 으로 정수를 입력받아 n 에 저장.
cout 으로 n * n 의 값과 2를 출력.
4. 성능 확인

5. 마무리
'백준 - 단계별로 풀어보기 > 시간 복잡도' 카테고리의 다른 글
[백준] 24267번 : 알고리즘 수업 - 알고리즘의 수행 시간 6 | C++ (0) | 2023.10.27 |
---|---|
[백준] 24266번 : 알고리즘 수업 - 알고리즘의 수행 시간 5 | C++ (0) | 2023.10.27 |
[백준] 24265번 : 알고리즘 수업 - 알고리즘의 수행 시간 4 | C++ (0) | 2023.10.27 |
[백준] 24263번 : 알고리즘 수업 - 알고리즘의 수행 시간 2 | C++ (0) | 2023.10.26 |
[백준] 24262번 : 알고리즘 수업 - 알고리즘의 수행 시간 1 | C++ (0) | 2023.10.26 |