4 条题解

  • 0
    @ 2025-1-5 13:16:15

    Arcaea Scoring System

    思路

    本题不需要任何思路

    解题方法

    按题意计算分数后使用多分支的if语句完成,注意精度问题

    复杂度

    时间复杂度:

    O(1)O(1)

    空间复杂度:

    O(1)O(1)

    Code

    #include <bits/stdc++.h>
    using namespace std;
    const int N = 1e7, M = 1e6;
    int main () {
    	int p1, p0, f, l;
    	long double ans = 0;
    	cin >> p1 >> p0 >> f >> l;
    	int n = p1 + p0 + f + l;
    	ans = ((N / n * p1 + p1 * n) + (N / n * p0) + (f * N / n / 2));
    	//cout << ans;
    	if (ans >= 9.9 * M) {
    		cout << "EX+";
    	}
    	else if (ans >= 9.8 * M) {
    		cout << "EX";
    	}
    	else if (ans >= 9.5 * M) {
    		cout << "AA";
    	}
    	else if (ans >= 9.2 * M) {
    		cout << "A";
    	}
    	else if (ans >= 8.9 * M) {
    		cout << "B";
    	}
    	else if (ans >= 8.6 * M) {
    		cout << "C";
    	}
    	else {
    		cout << "D";
    	}
    	return 0;
    }
    

    信息

    ID
    73
    时间
    3000ms
    内存
    512MiB
    难度
    1
    标签
    递交数
    404
    已通过
    236
    上传者