PATB1032存疑已解决

编程入门 行业动态 更新时间:2024-10-28 03:23:56

PATB1032存疑已解决

PATB1032存疑已解决

算法笔记86页,疑惑:如何动态申请,添加二维数组元素。
如何保存无序输入的多组有联系的数据。
一维数组,同样坐标的会被覆盖。
二维数组,第二维数组大小如何设置,怎么根据第一维来处置第二维。
结构体,会重叠数据,或者很麻烦。

看了其他人的解答:
一,num[],score[]两个数组,相同学校的分数相加,需两轮循环。从num[0]开始,寻找相同学校者,累加。第一轮结束,再从num[x]开始,第一个不等于num[0]的学校,再次循环。
题目给出N<100000,所以两轮循环的时间复杂度是10的10次方,一般1s内能进行10的7-8次方运算,所以两个数组两轮循环会超时。

法二:
sch[id]+=score;不保存数组,直接相加。
这种方法需谨记。

#include<stdio.h>
int main(){int n,id,i,score;scanf("%d",&n);int sch[n]={0};for(i=0;i<n;i++){scanf("%d%d",&id,&score);sch[id]+=score; }int temp=sch[0],N=0;for(i=0;i<n;i++){if(sch[i]>temp) {temp=sch[i];N=i;}}

更多推荐

PATB1032存疑已解决

本文发布于:2024-02-25 02:42:18,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1697514.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!