USACO T1
  • 板块学术版
  • 楼主xiaoyu2010
  • 当前回复4
  • 已保存回复4
  • 发布时间2023/12/15 23:05
  • 上次更新2023/12/15 23:26:20
查看原帖
USACO T1
946420
xiaoyu2010楼主2023/12/15 23:05
#include <bits/stdc++.h>
#include <iostream>
#define int long long
using namespace std;
int n,m,last;
struct node {
	int u,d=1,p=1;
} cand[1111];
signed main() {
	int cow[1111];
	cin>>n>>m;
	for (int i = 1; i <= n; i++) {
		cin >> cow[i];
	}
	for (int i = 1; i <= m; i++) {
		cin >> cand[i].u;
	}
	for (int i = 1; i <= m; i++) {
		for (int j = last+1; j <= n; j++) {
			if(cow[j]>=cand[i].d) {
				if(cow[j]>=cand[i].u) {
					cow[j]+=(cand[i].u-cand[i].d+1);
					cand[i].p=0;
					last=j;
					break;
				} else {
					int w=cow[j]+1;
					cow[j]+=(cow[j]-cand[i].d+1);
					cand[i].d=w;
				}
				cout<<j<<' '<<cow[j]<<endl;
			}
			while(cand[i].p) {
				for (int j = 1; j <= n; j++) {
					if(cow[j]>=cand[i].d) {
						if(cow[j]>=cand[i].u) {
							cow[j]+=(cand[i].u-cand[i].d+1);
							cand[i].p=0;
							last=j;
							break;
						} else {
							int w=cow[j]+1;
							cow[j]+=(cow[j]-cand[i].d+1);
							cand[i].d=w;
						}
						cout<<j<<' '<<cow[j]<<endl;
					}

				}
			}
		}
		for (int i =1; i <=n; i++) {
			cout << cow[i] << endl;
		}

		return 0;
	}

哪里错了呀

2023/12/15 23:05
加载中...