PAT (Basic Level) Practice (中文)- 1077 互评成绩计算(20 分)

简介: PAT (Basic Level) Practice (中文)- 1077 互评成绩计算(20 分)

题目链接:点击打开链接

题目大意:略。

解题思路:四舍五入到整数小技巧:

printf("%d",(int)(x+0.5)); // 比下面这种写法有时更加精确
printf("%.0f",double(x));

Ps:%.0f 有时候在不同的编译器可能答案会不一样,比如:C::B 16.01 中有误差,而 C::B 12.x 就正常。

AC 代码

#include<bits/stdc++.h>
#include<cmath>
#define mem(a,b) memset(a,b,sizeof a);
#define INF 0x3f3f3f3f
using namespace std;
typedef long long ll;
int main()
{
    int n,m;
    while(~scanf("%d%d",&n,&m))
    {
        for(int q=0;q<n;q++)
        {
            int a[n+10],k=0,c;
            double rs,ans=0;
            scanf("%d",&c); rs+=c;
            for(int i=1;i<n;i++)
            {
                scanf("%d",&c);
                if(c>=0&&c<=m)
                {
                    a[k++]=c;
                }
            }
            sort(a,a+k);
            for(int i=1;i<k-1;i++) ans+=a[i];
            printf("%d\n",int((ans/(k-2)+rs)/2+0.5));
        }
    }
    return 0;
}
目录
相关文章
|
10月前
|
C语言 C++
PAT (Basic Level) Practice (中文)1099 性感素数(20分)
“性感素数”是指形如 (p, p+6) 这样的一对素数。之所以叫这个名字,是因为拉丁语管“六”叫“sex”(即英语的“性感”)。(原文摘自 http://mathworld.wolfram.com/SexyPrimes.html) 现给定一个整数,请你判断其是否为一个性感素数。
85 0
|
10月前
|
C语言 C++
PAT (Basic Level) Practice (中文) 1031 查验身份证 (15分)
一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};然后将计算的和对11取模得到值Z;最后按照以下关系对应Z值与校验码M的值:
53 0
|
算法
PAT (Basic Level) Practice (中文)1028. 人口普查(20分)
PAT (Basic Level) Practice (中文)1028. 人口普查(20分)
76 0
|
存储 测试技术
PAT (Basic Level) Practice (中文) 1004 成绩排名 (20 分)
PAT (Basic Level) Practice (中文) 1004 成绩排名 (20 分)
63 0
|
存储
PAT (Basic Level) Practice (中文) 1041 考试座位号 (15 分)
PAT (Basic Level) Practice (中文) 1041 考试座位号 (15 分)
64 0
PAT (Basic Level) Practice (中文) 1041 考试座位号 (15 分)
PAT (Basic Level) Practice (中文) 1036 跟奥巴马一起编程 (15 分) p89
PAT (Basic Level) Practice (中文) 1036 跟奥巴马一起编程 (15 分) p89
125 0
|
测试技术
PAT (Basic Level) Practice (中文)1012 数字分类 (20 分)+易错测试点
PAT (Basic Level) Practice (中文)1012 数字分类 (20 分)+易错测试点
97 0
PAT (Basic Level) Practice (中文)1012 数字分类 (20 分)+易错测试点
PAT (Basic Level) Practice (中文) 1010 一元多项式求导 (25 分)
PAT (Basic Level) Practice (中文) 1010 一元多项式求导 (25 分)
72 0
PAT (Basic Level) Practice (中文)- 1028 人口普查(20 分)
PAT (Basic Level) Practice (中文)- 1028 人口普查(20 分)
93 0
PAT (Basic Level) Practice (中文)- 1073 多选题常见计分法(20 分)
PAT (Basic Level) Practice (中文)- 1073 多选题常见计分法(20 分)
102 0