Try   HackMD

2020暑期培訓小考(一) 複雜度題

1.

for(int i=0;i<n;i+=5){
    for(int j=i;j;j>>=2);
}

2.

vector<int> a(n);
for(int i=0;i<n;i++)
    a.erase(a.begin());

3.

map<int,int> dp;
for(int i=0;i<(1<<n);i++){
    for(int j=0;j<(1<<n);j++){
        if((i&j)==k) dp[i]+=dp[j];  
    }
}

4.

int a[n];
set<int> s;
for(int i=1;i<n;i<<=1){
    s.insert(lower_bound(a,a+n,i)-a);
}

5.

int a[n];
for(int i=0;<=n;i+=3){
    for(int j=0;j*j<i;j+=2){
        sort(a+j,a+n);
    }
}