ZS1#A. 简单的时间复杂度

简单的时间复杂度

请输出下方多个程序的时间复杂度,仅一行输出样例如下:

#include<bits/stdc++.h>
using namespace std;

int main(){
	int t; cin >> t;
	if(t == 1)
		cout << "O(1)";
	else if(t == 2)
		cout << "O(n)";
	else if(t == 3)
		cout << "O(n^2)";
	return 0;
}

nn 道题目会给你输入一个 nn 随后你需要输出答案。

输出时间复杂度样式如下,直接复制后修改即可,不要自己打因为测题会错:

常数阶:

O(1)

线性阶:

O(n)

次方阶(多少次方记得把2改成其他):

O(n^2)

指数阶(多少底数记得把2改成其他):

O(2^n)

对数阶(不考虑底数):

O(logn)

题目如下:

第一题

for(i = 1;i < n;i = 2*i)
    cout << "i=" << i << endl;

第二题

int func(int n)
{
    if(n<=1)
        return 1;  
    else
        return n*func(n-1); 
}

第三题

s = 0;
for(i = 0; i < n; i++)
    for(j = 0; j < n; j++)
         s += B[i][j];
sum = s;

第四题

x = 0;
for(k = 1; k <= n; k*=2)
    for (j = 1; j <= n; j++)
        x++;