백준 문제풀이

24264 번 : 알고리즘 수업 - 알고리즘의 수행 시간 3

하다블 2023. 4. 29. 18:23
반응형

문제는 다음과 같습니다.

https://www.acmicpc.net/problem/24264

 

24264번: 알고리즘 수업 - 알고리즘의 수행 시간 3

오늘도 서준이는 알고리즘의 수행시간 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 입력의 크기 n이 주어지면 MenOfPassion 알고리즘 수행 시

www.acmicpc.net

 

풀이 코드는 다음과 같습니다.

#include <iostream>
using namespace std;


int main()
{
	long long n;
	cin>>n;
	cout<<n*n<<"\n"<<2;
	return 0;
}

코드 1에 유의함과 동시에 이번에는 고려해야 할 점이 생깁니다.

저번 문제들을 통해서 이중으로 되어 있는 for문을 통해 시간 복잡도가 O(n^2) 임을 알 수 있고 수행 횟수 역시 n의 제곱임을 알 수 있습니다.

하지만 n의 범위는 500,000이므로 int를 사용하게 되면 다음과 같이 범위를 초과하는 일이 발생하게 됩니다.

int로 계산했을 때의 값입니다. 기대값은 250000000000이지만 엉뚱한 값을 출력하고 있음을 알 수 있습니다.

따라서 n의 타입을 long long으로 설정해 주었습니다.

반응형