注册 登录
编程论坛 C++教室

北大的online judge让我很受伤。。

gjq0709 发布于 2012-10-01 10:03, 421 次点击
在北大的online judge上做题目感觉很销魂的说~突然遇到一个问题怎么也通不过(不会做也就算了。。。)题号是1006我写了两个都是wrong answer...
下面附上我的代码。随看题随写的可能结构上欠思考。希望各位大神帮我找找问题。
#include<iostream>
#include<vector>
using namespace std;
//---------------
vector<vector<int>>data;
int p;
void input();
void output(vector<int>&);
int main(){
    input();
    vector<int>answer;
    for(int i=0;i<data.size();i++){
        if(data[i][0]==-1) break;
        for(int day=data[i][3]+1;day<=21252;day++){
            if((day-data[i][0])%23==0 &&(day-data[i][1])%28==0 && (day-data[i][2])%33==0){
                    answer.push_back(day-data[i][3]);
                break;
            }
        }
    }
    output(answer);
}
void input(){
    int row,col;
    for(row=0;;row++){
        vector<int>data_line;
        for(col=0;col<4;col++){
            cin>>p;
            data_line.push_back(p);
        }
        data.push_back(data_line);
        if(p==-1) break;
    }
}
void output(vector<int>&answer){
    for(int i=0;i<answer.size();i++)
        cout<<"Case "<<i+1<<": the next triple peak occurs in "<<answer[i]<<" days."<<endl;
}

ps.题目上的事例都能跑对的。。可是就是不知道为什么是wrong answer。。
0 回复
1