求助!!!

P3613 【深基15.例2】寄包柜

Firrel_qaq @ 2022-05-28 11:29:34

#include<bits/stdc++.h>
using namespace std;
struct bri{
    int x,y,num;
};
bri a[10000005];
int n,m;
int now = 0;
int main(){
    scanf("%d%d",&n,&m);
    for(int i = 0;i <= m;i++){
        int opt;
        scanf("%d",&opt);
        if(opt == 1){
            int x,y,numn;
            scanf("%d%d%d",&x,&y,&numn);
            bool flag = 0;
            for(int j = 1;j <= now;j ++){
                if(a[j].x == x && a[j].y == y){
                    a[j].num = numn;
                    flag = 0;
                }
            }
            if(!flag){
                now++;
                a[now].x = x;
                a[now].y = y;
                a[now].num = numn;
            }
        }
        if(opt == 2){
            int x,y;
            scanf("%d%d",&x,&y);
            for(int j = 1;j <= now;j ++){
                if(a[j].x == x && a[j].y == y){
                    cout << a[j].num << endl;
                }
            }
        }
    }
    return 0;
}

by nannuke @ 2023-02-05 14:59:58

@orcasquirrel

for(int i = 0;i <= m;i++){

应改为

for(int i = 1;i <= m;i++){

for(int i = 0;i < m;i++){

因为题目中是要提问m次,而不是m+1次,如果是你写的那种,i会从0开始,到m结束,重复了m+1次。


|