nyoj845无主之地1

这道题看起来相当简单,但是做起来并不是那么容易AC,我错了好多遍,主要是没理解清题意,先前以为要排序,所以搞个桶排序,谁知道原是不需要排序,按照顺序将其输出即可,既然·这样的话,那么我就再开一个flag数组,然后就再记录下来这些数字,类似于用数组模拟链表一样,这样就简单多了,这个题虽然耗费了时间,但是我对于数组模拟链表的理解更深刻了。描述 子晓最近在玩无主之地1,他对这个游戏的评价不错,结合
摘要由CSDN通过智能技术生成

这道题看起来相当简单,但是做起来并不是那么容易AC,我错了好多遍,主要是没理解清题意,先前以为要排序,所以搞个桶排序,谁知道原是不需要排序,按照顺序将其输出即可,既然·这样的话,那么我就再开一个flag数组,然后就再记录下来这些数字,类似于用数组模拟链表一样,这样就简单多了,这个题虽然耗费了时间,但是我对于数组模拟链表的理解更深刻了。

描述
    子晓最近在玩无主之地1,他对这个游戏的评价不错,结合了FPS与RPG元素,可玩度很高。不过,他发现了一代的任务系统做的不好,任务系统并没有帮他统计清楚哪个区域有多少任务,而且,给任务的时候呢,也比较散乱。比如,在1区域的一个任务点,你领到了4个任务;2区域的一个任务点,你领到了3个任务;游戏一段时间后,你又在1区域另一个任务点个领到了3任务(之前任务没有完成),3区域领到了9个任务……他感觉很凌乱,现在他要设计一个程序来统计每个区域有多少个任务。

输入
    多组测试数据,以输入0 0结束
    每组数据占一行,输入m区域,n个任务(0<m,n<100)
输出
    输出各个区域的统计结果(不要求排序)
样例输入

    1 3
    2 3
    3 4
    1 7
    0 0

样例输出

    1 10
    2 3
    3 4

#include<iostream>
#include<cstring>
using namespace std;
int main(){
    int a,b;
    int book[101];
    int flag[101];
    int top=0;
    memset(flag,0,sizeof(flag));
    memset(book,0,sizeof(book));
    while(cin>>a>>b){
        int f=0;
        if(a==0&&b==0)break;
        for(int i=0;i<top;i++){
            if(a==flag[i]){
            book[flag[i]]+=b;
            f=1;
            }
        }
        if(f==1)continue;
        flag[top++]=a;
        book[flag[top-1]]+=b;
    }
    for(int i=0;i<top;i++){

        cout<<flag[i]<<" "<<book[flag[i]]<<endl;
    }
    return 0;
}

每天进步一点点,时刻不忘初心;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值