题目: 牛客网链接
概述: 本题给出类似我们高考的评判条件,三个评卷老师,一个专家,看最终评判出多少分
思路: 简单的逻辑问题
#include <iostream>
#include <cmath>
#include <algorithm>
using namespace std;
int main()
{
int p, t, g1, g2, g3, gj;
while(scanf("%d%d%d%d%d%d", &p, &t, &g1, &g2, &g3, &gj) != EOF)
{
if(abs(g1-g2)<=t)
{
printf("%0.1f\n", (double)(g1+g2)/2);
}
else
{
//G3在其中一个的范围之内,但不是在两个的范围之内
if((abs(g3-g1)<=t||abs(g3-g2)<=t) && !(abs(g3-g1)<=t)*(abs(g3-g2)<=t))
{
int flag = abs(g3-g1) - abs(g3-g2);
if(flag > 0) printf("%0.1f\n", (double)(g3+g2)/2);
else printf("%0.1f\n", (double)(g3+g1)/2);
}
else if(abs(g3-g1)<=t&&abs(g3-g2)<=t)
{
int max1 = max(g1, g2);
max1 = max(max1, g3);
printf("%0.1f\n", max1);
}
else
{
printf("%0.1f\n", gj);
}
}
}
return 0;
}
本文介绍了一种模拟高考评分过程的算法实现,通过三位教师和一位专家的评分,结合特定的逻辑判断,确定最终得分。算法考虑了评分者之间的差异,并在不同条件下选择合适的评分进行平均或取最大值。

1463

被折叠的 条评论
为什么被折叠?



