#32408: 求解!!!!!!!!!記憶體錯誤,麻煩大神幫我看一下是哪邊寫錯了。


joha91100800@gmail.com (葉峻翰)

學校 : 不指定學校
編號 : 159539
來源 : [123.205.86.58]
最後登入時間 :
2023-10-11 11:39:39
f709. 12019 - Doom's Day Algorithm -- UVA12019 | From: [49.217.238.166] | 發表日期 : 2022-10-08 03:54

#include<iostream>

using namespace std;

 

int main()

{

    int l;

    int m[12],d;

    string days[7] ={"Saturday","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday"};

    int months[12] = {31,28,31,30,31,30,31,31,30,31,30,31};

    cin>>l;

    int i,j;

    int count;

    for(i=0;i<l;i++)

    {

        cin>>m[i]>>d;

        count =0;

        count+= d;

        if(m[i]>1)

        {

            for(j=0;j<m[i]-1;j++)

            {

                count+= months[j];

            }

        }

        cout << days[(count%7)-1] << endl;

    }

    

    return 0;

}

 
#32423: Re: 求解!!!!!!!!!記憶體錯誤,麻煩大神幫我看一下是哪邊寫錯了。


cges30901 (cges30901)

學校 : 不指定學校
編號 : 30877
來源 : [39.9.74.255]
最後登入時間 :
2024-10-14 22:20:08
f709. 12019 - Doom's Day Algorithm -- UVA12019 | From: [39.9.78.197] | 發表日期 : 2022-10-09 10:21

1.

    int m[12],d;

2.

        cout << days[(count%7)-1] << endl;

 


1. 測資最多有100筆,m[12]會超出陣列範圍

2. 如果count%7是0,你會存取到days[-1]

 
ZeroJudge Forum