您的位置:首页 > 财经 > 金融 > 设计接单兼职网站_软件开发工程师招聘简章_网络推广公司加盟_百度推广托管

设计接单兼职网站_软件开发工程师招聘简章_网络推广公司加盟_百度推广托管

2025/3/20 10:25:25 来源:https://blog.csdn.net/z_y_j229970438/article/details/146165207  浏览:    关键词:设计接单兼职网站_软件开发工程师招聘简章_网络推广公司加盟_百度推广托管
设计接单兼职网站_软件开发工程师招聘简章_网络推广公司加盟_百度推广托管

L1-088 静静的推荐 - 团体程序设计天梯赛-练习集 (pintia.cn)

题解

这里代码很简单,但是主要是循环里面的内容很难理解,下面是关于循环里面的内容理解:

这里 n = 10 表示有 10 个学生,k = 2 表示企业接受 2 批次的推荐名单,s = 90 表示企业的 PAT 面试分数线。

下面我们逐行分析循环里的代码:

  1. while(n--): 这个循环会执行 n 次,每次处理一个学生的成绩。每执行一次循环,n 的值就会减 1,直到 n 变为 0 时循环结束。

  2. cin>>x>>y;: 每次循环开始时,从输入中读取一个学生的天梯赛分数 x 和 PAT 分数 y

  3. if(x>=175): 判断该学生的天梯赛分数是否不低于 175 分。只有满足这个条件,该学生才有可能被推荐。如果不满足,就跳过这个学生,继续处理下一个学生。

    • 例如,当读取到 169 91 时,因为 x = 169 < 175,所以这个学生不满足基本条件,不会进入后续的判断。

  4. if(y>=s): 如果该学生的天梯赛分数不低于 175 分,接着判断其 PAT 分数是否达到或超过企业的面试分数线 s。如果满足这个条件,那么这个学生一定可以被推荐,将 count 的值加 1。

    • 例如,当读取到 175 90 时,x = 175 >= 175y = 90 >= 90,所以这个学生可以被推荐,count 从 0 变为 1。

    • 再如,当读取到 256 100 时,x = 256 >= 175y = 100 >= 90count 再加 1,变为 2。

  5. else if(score[x]<k): 如果该学生的天梯赛分数不低于 175 分,但 PAT 分数未达到面试分数线,那么就检查该天梯赛分数之前被推荐的次数 score[x] 是否小于企业接受的推荐批次 k。如果小于,说明该天梯赛分数还可以再推荐一次,将 score[x] 的值加 1 表示该分数又被推荐了一次,同时将 count 的值加 1。

    • 例如,当读取到 175 88 时,x = 175 >= 175y = 88 < 90,此时 score[175] 初始值为 0,0 < 2,所以该学生可以被推荐。score[175] 变为 1,count 变为 3。

    • 当再次读取到 175 0 时,同样 x = 175 >= 175y = 0 < 90,此时 score[175] = 1 < 2,该学生也可以被推荐。score[175] 变为 2,count 变为 4。

    • 当又读取到一个 175 分但 PAT 分数小于 90 的学生时,因为 score[175] = 2 已经不小于 k = 2 了,所以这个学生就不能被推荐了。

代码
#include<bits/stdc++.h>
using namespace std;
int main(){int n,k,s;cin>>n>>k>>s;int x,y;int count=0;int score[291]={0};for(int i=0;i<n;i++){cin>>x>>y;if(x>=175){if(y>=s){count++;}else if(score[x]<k){score[x]++;count++;}}}cout<<count;return 0;
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com