0分求调,必关
查看原帖
0分求调,必关
1048576
New_Void楼主2024/10/15 22:35
#include <iostream>
using namespace std;
int main(){
    int n;
    cin>>n;
    int arr[n][3];
    for (int i=0;i<n;i++){
        for (int j=0;j<3;j++){
            cin>>arr[i][j];
        }
    }
    int yxq[n];
    int price=0;
    for (int i=0;i<n;i++){
        int c=0;
        int flag=0;
        if (arr[i][0]==0){//判断是否乘坐的是地铁
            price+=arr[i][1];
            cout<<price<<endl;
            c+=1;
            yxq[i]=45;
            int ls=0;
            for (int j=i+1;j<n;j++){
                yxq[i]-=(arr[j][2]-arr[j-1][2]);
                if (arr[j][1]>arr[i][1]){
                    flag=1;
                }
                if (yxq[i]<0 && arr[j][0]==1 && arr[j][1]<=arr[i][1]){
                    c-=1;
                    price+=arr[j][1];
                    //cout<<"a"<<price<<endl;
                    break;
                }
                else if (yxq[i]>=0 && arr[j][0]==1 && arr[j][1]<=arr[i][1]){//是公交车
                    flag=0;
                    c-=1;
                    break;
                }
            }
            if (flag==1){
                int MAX=1000000000;
                for(int z=i+1;z<n;z++){
                    if (yxq[i]>=0 && arr[z][0]==1){
                        if (arr[z][1]<MAX){
                            MAX=arr[z][1];
                        }
                    }
                }
                price+=MAX;
            }
        }
    }
    cout<<price;
    return 0;
}

2024/10/15 22:35
加载中...