admin 发布的文章

#include <iostream>
#include <algorithm>

using namespace std;

int n, k;
int m;
const int N = 1e6 + 10;
int t[N], c[N], mint, maxt;

bool check(int tmp){
    int s = 0;
    for (int i = 0;i < n;i ++){
        if (tmp < t[i]) s += c[i] * (t[i] - tmp);
        if (s > m) return false;
    }
    return true;

}

int main(){
    cin >> n >> m >> k;
    mint = k;
    for (int i = 0;i < n; i ++){
        cin >> t[i] >> c[i];
        maxt = max(maxt, t[i]);
    }
    int l = mint, r = maxt;
    while (l < r){
        int mid = l + r >> 1;
        if (check(mid)){
            r = mid;
        
        }else{
            l = mid + 1;
        }
    }
    
    cout << l;
    

}

#include <iostream>

using namespace std;

const int N = 1e4 + 10;
int n, d;
long long Q[N][21], K[N][21], V[N][21], W[N], res[N][21], t[21][21];
int main(){
    cin >> n >> d;
    for (int i = 0;i < 3;i ++){
        for (int j = 0;j < n;j ++){
            for (int k = 0;k < d;k ++){
                switch (i){
                    case 0: cin >> Q[j][k];  break;
                    case 1: cin >> K[j][k];  break;
                    case 2: cin >> V[j][k];  break;
                }

            }
        }
    }
    for (int i = 0;i < n;i ++) cin >> W[i];


    for (int i = 0;i < d;i ++){

        for (int k = 0;k < d;k ++){
            for (int j = 0;j < n;j ++){
                t[i][k] += K[j][i] * V[j][k];
            }
        }

    }

    for (int i = 0;i < n; i ++){
        for (int k = 0;k < d;k ++){
            for (int j = 0;j < d;j ++){
                res[i][k] += Q[i][j] * t[j][k];
            }
            cout << res[i][k] * W[i] << ' ';
        }
        cout << endl;
    }

}

Python

n = int(input())
s = ["" for _ in range(n)]

for i in range(n):
    for j in range(8):
        s[i] += input()
    print(s.count(s[i]))

C++

#include <iostream>
#include <unordered_map>

using namespace std;

const int N = 110, k = 131;
int n;
unordered_map<string, int> map;

int main(){
    cin >> n;
    for (int i = 0;i < n; i ++){
        string t = "";
        int u = 0;
        for (int j = 0;j < 8;j ++){
            string s;
            cin >> s;
            t += s;
        }

        if (map.count(t) == 0){
            map[t] = 1;
            cout << 1 << endl;
        }else{
            map[t] += 1;
            cout << map[t] << endl;
        }
    }
}

坐标变换(其一)

#include <iostream>
using namespace std;

const int N = 110;
int a[N][2], d[N][2], s[2];

int main(){
    int n, m;
    cin >> n >> m;
    for (int i = 0;i < n; i ++){
        cin >> d[i][0] >> d[i][1];
        s[0] += d[i][0];
        s[1] += d[i][1];
    }
    
    for (int i = 0;i < m; i ++){
        cin >> a[i][0] >> a[i][1];
        cout << a[i][0] + s[0] << ' ' << a[i][1] + s[1] << endl;
    }
    
    
    
}

坐标变换(其二)

#include <iostream>
#include <cmath>

using namespace std;

const int N = 1e5 + 10;
int n, m;
double s1[N], s2[N];

int main()
{
    s1[0] = 1;
    cin >> n >> m;
    for (int i = 1; i <= n; i ++){
        int u;
        double v;
        cin >> u >> v;
        if (u == 1){
            s1[i] = s1[i - 1] * v;
            s2[i] = s2[i - 1];
        }else{
            s1[i] = s1[i - 1];
            s2[i] = s2[i - 1] + v;
        }
    }
    
    for (int i = 0;i < m; i ++){
        int l, r;
        double x, y;
        cin >> l >> r >> x >> y;
        
        double k = s1[r] / s1[l - 1];
        x *= k;
        y *= k;
        
        double t = s2[r] - s2[l - 1];
        double x1 = x * cos(t) - y * sin(t);
        double y1 = x * sin(t) + y * cos(t);
        
        printf("%.3f %.3f\n", x1, y1);
    }
    
}

在添加SSL站点时会有个选择叫做

Please enter full path to SSL Certificate file
这里作为PEM的站点要填写你自己的PEM的文件位置
虽然后面还会问到,但是感觉并无卵用。

但是大部分的优化已经做的很棒了,比如无人值守的安装以及添加站点时不用我重复的填自己的邮箱了。