当前位置: 首页 > news >正文

常平镇网站建设服务公司税率

常平镇网站建设,服务公司税率,企业级问答网站开发,网站恶意攻击引言#xff1a; 最近刷了一些洛谷的基础算法题#xff0c;关于排序类和贪心类#xff0c;也发现了结构体用在这两种题目上的异曲同工之妙#xff0c;那么我们废话不多说#xff0c;直接上题目与解析帮助大家更好地掌握。 题目描述 某小学最近得到了一笔赞助#xff0…引言 最近刷了一些洛谷的基础算法题关于排序类和贪心类也发现了结构体用在这两种题目上的异曲同工之妙那么我们废话不多说直接上题目与解析帮助大家更好地掌握。 题目描述 某小学最近得到了一笔赞助打算拿出其中一部分为学习成绩优秀的前 55 名学生发奖学金。期末每个学生都有 33 门课的成绩语文、数学、英语。先按总分从高到低排序如果两个同学总分相同再按语文成绩从高到低排序如果两个同学总分和语文成绩都相同那么规定学号小的同学排在前面这样每个学生的排序是唯一确定的。 任务先根据输入的 33 门课的成绩计算总分然后按上述规则排序最后按排名顺序输出前五名名学生的学号和总分。 注意在前 55 名同学中每个人的奖学金都不相同因此你必须严格按上述规则排序。例如在某个正确答案中如果前两行的输出数据每行输出两个数学号、总分) 是 7 279 5 279这两行数据的含义是总分最高的两个同学的学号依次是 77 号、55 号。这两名同学的总分都是 279279 (总分等于输入的语文、数学、英语三科成绩之和) 但学号为 77 的学生语文成绩更高一些。 如果你的前两名的输出数据是 5 279 7 279则按输出错误处理不能得分。 输入格式 共 n1 行。 第 1 行为一个正整数 n≤300表示该校参加评选的学生人数。 第 2 到 n1 行每行有 3 个用空格隔开的数字每个数字都在 0 到 100 之间。第 j 行的 3 个数字依次表示学号为 j−1 的学生的语文、数学、英语的成绩。每个学生的学号按照输入顺序编号为 1∼n恰好是输入数据的行号减 1。 保证所给的数据都是正确的不必检验。 输出格式 共 5行每行是两个用空格隔开的正整数依次表示前 5 名学生的学号和总分。 输入输出样例 输入 #1复制 6 90 67 80 87 66 91 78 89 91 88 99 77 67 89 64 78 89 98输出 #1复制 6 265 4 264 3 258 2 244 1 237 输入 #2复制 8 80 89 89 88 98 78 90 67 80 87 66 91 78 89 91 88 99 77 67 89 64 78 89 98 输出 #2复制 8 265 2 264 6 264 1 258 5 258 我们发现排序的优先级是总分大的优先总分相同则比较语文成绩语文成绩相同则比较学号学号小的同学排前面这里需要注意前面都是大的在前唯有学号是小的在前这是等下要编写的一个部分。 那我们来初步实现一下代码块 代码块实现 struct stu {int num;int a,b,c;int sum; }student[100005]; 我们定义一个结构体部分负责接收学号三科目成绩总成绩等信息。 bool cmp(stu a,stu b) {if(a.sumb.sum){return 1;}else if(a.sumb.sum){return 0;}else{if(a.yb.y){return 1;}else if(a.yb.y){return 0;}else{if(a.numb.num){return 1;}else{return 0;}}}} 这里我们定义一个bool类型的比较函数方便后续的排序中sort使用我们依据推理逻辑优先总分在先再次语文最后学号注意是哪种情况该先排哪种情况又该后排。 int main() {int n;cin n;for(int i1;in;i){student[i].numi;cin student[i].yu student[i].shu student[i].eng;student[i].sumstudent[i].yustudent[i].shustudent[i].eng;}sort(student1,student1n,cmp);for(int i1;i5;i){cout student[i].num student[i].sum endl;}return 0; 这里是主函数的部分注意结构体传数字时的操作并使用sort根据上面的逻辑排序最后输出即大功告成这一题主要可以锻炼大家对于结构体与排序方法的掌握很建议大家去做一下最后完整代码和题目链接奉上 #include iostream #include algorithm using namespace std; struct stu {int num;int yu,shu,eng;int sum; }student[10005]; bool cmp(stu a,stu b) {if(a.sumb.sum){return 1;}else if(a.sumb.sum){return 0;}else{if(a.yub.yu){return 1;}else if(a.yub.yu){return 0;}else{if(a.numb.num){return 0;}else{return 1;}}} } int main() {int n;cin n;for(int i1;in;i){student[i].numi;cin student[i].yu student[i].shu student[i].eng;student[i].sumstudent[i].yustudent[i].shustudent[i].eng;}sort(student1,student1n,cmp);for(int i1;i5;i){cout student[i].num student[i].sum endl;}return 0; } 题目链接https://www.luogu.com.cn/problem/P1093 部分背包问题 在掌握了上一题之后面对一部分的背包问题我们是不是也可以使用异曲同工的方法来做出来呢看下面这一题 题目描述 阿里巴巴走进了装满宝藏的藏宝洞。藏宝洞里面有 N(N≤100) 堆金币第 i 堆金币的总重量和总价值分别是 mi(1≤mi≤100),vi​​(1≤vi​≤100)。阿里巴巴有一个承重量为 (T≤1000) 的背包但并不一定有办法将全部的金币都装进去。他想装走尽可能多价值的金币。所有金币都可以随意分割分割完的金币重量价值比也就是单位价格不变。请问阿里巴巴最多可以拿走多少价值的金币 输入格式 第一行两个整数 N,T。 接下来 N 行每行两个整数 mi​,vi​。 输出格式 一个实数表示答案输出两位小数 输入输出样例 输入 #1复制 4 50 10 60 20 100 30 120 15 45输出 #1复制 240.00 首先题目很明确了我们可以分割单块金币以获得权重最大的金币权重价值/质量我们肯定优先选择相同质量价值最高的金币堆那么我们就可以对权重进行排序再慢慢比较背包质量与金币质量直到背包刚好装满为止。 结构体定义 struct value {int w,v;double jun; }money[100005]; 再定义比较函数 bool cmp(Value a,Value b) {if(a.junb.jun){return 1;}else{return 0;} } 主函数部分 int main() {int n,t;cin n t;for(int i0;in;i){cin money[i].w money[i].v;money[i].junmoney[i].v/money[i].w;}sort(money,moneyn,cmp);double sum;for(int i0;in;i){if(tmoney[i].w){summoney[i].v;t-money[i].w;}else{sumt*money[i].jun;break;}}printf(%.2lf,sum);return 0; 这一题我觉得主函数部分是难于自定义函数部分的操作的还有最后这一个break操作一定要记得加上也就是背包最后装块的部分装了以后背包就满了。最后完整代码和题目地址奉上 #include iostream #include algorithm using namespace std; struct Value {double w,v;double jun; }money[10005]; bool cmp(Value a,Value b) {if(a.junb.jun){return 1;}else{return 0;} } int main() {int n,t;cin n t;for(int i0;in;i){cin money[i].w money[i].v;money[i].junmoney[i].v/money[i].w;}sort(money,moneyn,cmp);double sum;for(int i0;in;i){if(tmoney[i].w){summoney[i].v;t-money[i].w;}else{sumt*money[i].jun;break;}}printf(%.2lf,sum);return 0; } 题目链接https://www.luogu.com.cn/problem/P2240 总结 今天给大家介绍了两个题目它们的布局大体相同主要是为了大家能够掌握使用结构体排序自定义函数的结合使用来解决问题制作不易给个点赞鼓励一下吧
http://www.zqtcl.cn/news/197044/

相关文章:

  • 网站seo插件wordpress模板中文版
  • 夹江移动网站建设手机网站微信登陆
  • 浏阳做网站网易企业邮箱注册官网
  • 东莞网站建设是什么意思自己怎么做企业网站建设
  • 免费的网站申请泰州网站整站优化
  • 毕业设计做企业门户网站过期域名网站
  • 网站建设和风险分析简单网页制作代码模板
  • 照片展示网站那个网站可以做攻略
  • 优秀网站设计赏析万网网站备案多久
  • 网站维护服务有哪些电商网站
  • 部门网站建设总结鼎城网站建设
  • 制作网站的模板下载大型商城购物平台开发
  • wordpress 分类文章置顶整站优化推广品牌
  • 网站手机验证码如何做官方网站在家做兼职
  • 东莞三合一网站制作网站建设 千助
  • 114网站做推广怎么样江苏建设培训网站
  • 如何让网站做网页适配网站上的产品五星怎样做优化
  • 怎么做网站排名优化免费jq网站模板
  • 源码时代培训机构官网自己建网站怎么做seo
  • 宜都网站制作济南比较大的网站制作公司
  • 怎么用电脑做网站主机假网站怎么制作
  • 网站 微信网络营销方案设计心得
  • 淘宝客 wordpress网站wordpress类似的工具
  • 农村建设房子建设网站建设渭南房产网站制作
  • php网站开发用什么win2008 iis 新建网站
  • 中山营销网站建设杭州网站建设开发有限公司
  • 被他人备案后做违法网站抖音seo推广
  • 手机网站广告代码南靖县建设局网站
  • 郑州网站建设智巢高德地图有外资背景吗
  • 网站开发常遇到客户问题wordpress怎么升级