UOJ Logo

NOI.AC

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#194119#3413. 大招释放ggcggc1001ms1248kbC++111.1kb2023-10-15 09:24:192023-10-15 12:13:10

answer

#include<iostream>
#include<queue>
#define ri register int
using namespace std;
const int N=10,MAX=1e7;
int n;
int a[N],ma[N][N],op[N];
int m[N];
queue<int> q;
int main(){
//	freopen("ex_cycle1.in","r",stdin);
	ios::sync_with_stdio(false);
	cin.tie(NULL);
	for(ri i=1;i<=4;i++){
		cin>>a[i];
		m[i]=a[i];
	}
	for(ri i=1;i<=4;i++){
		for(ri j=1;j<=4;j++){
			cin>>ma[i][j];
			if(ma[i][j]>=a[i]&&j==i){
				cout<<"Yes"<<endl;
				return 0;
			}
		}
	}
	for(ri i=1;i<=4;i++){
		m[i]-=a[i];
		for(ri j=1;j<=4;j++){
			m[j]+=ma[i][j];
		}
	}
	bool ok=false;
	for(ri i=1;i<=4;i++){
		if(m[i]<a[i]) ok=true;
	}
	int sum=0;
	if(ok){
		for(ri i=1;i<=4;i++){
			ok=false;
			if(m[i]>=a[i]&&!op[i]){
				op[i]=true;
				ok=true;
				m[i]-=a[i];
				for(ri j=1;j<=4;j++){
					m[j]+=ma[i][j];
				}
				sum++;
//				cout<<1<<endl;
				if(sum==MAX){
//					cout<<1<<endl;
					
					cout<<"Yes"<<endl;
					return 0;
				}
				q.push(i);
				if(q.size()==4){
					op[q.front()]=false;
					q.pop();
				}
			}
			if(ok) i=1;
		}
		cout<<"No"<<endl;
	}
	else cout<<"Yes"<<endl;
	return 0;
}

Details

小提示:点击横条可展开更详细的信息

Test #1:

score: 10
Accepted
time: 0ms
memory: 1248kb

input:

19 52 8 18
28 58 66 14
5 38 74 58
80 34 50 3
21 61 74 11

output:

Yes

result:

ok single line: 'Yes'

Test #2:

score: 10
Accepted
time: 0ms
memory: 1244kb

input:

19 16 34 8
20 44 45 2
30 64 69 72
70 26 62 63
35 5 76 49

output:

Yes

result:

ok single line: 'Yes'

Test #3:

score: 10
Accepted
time: 0ms
memory: 1244kb

input:

67 77 11 29
35 79 25 7
22 41 65 48
10 77 10 42
39 52 29 12

output:

Yes

result:

ok single line: 'Yes'

Test #4:

score: 10
Accepted
time: 0ms
memory: 1244kb

input:

51 41 69 67
0 39 10 77
46 36 11 29
48 69 45 27
70 44 31 50

output:

Yes

result:

ok single line: 'Yes'

Test #5:

score: 10
Accepted
time: 0ms
memory: 1244kb

input:

19 21 15 9
73 24 38 33
39 62 7 60
38 38 25 6
74 10 16 12

output:

Yes

result:

ok single line: 'Yes'

Test #6:

score: 10
Accepted
time: 0ms
memory: 1248kb

input:

41 33 30 49
14 2 5 14
13 10 1 14
8 20 8 18
6 1 16 3

output:

Yes

result:

ok single line: 'Yes'

Test #7:

score: 10
Accepted
time: 0ms
memory: 1248kb

input:

52 36 34 38
11 16 14 16
9 6 9 10
16 1 4 3
16 13 7 9

output:

Yes

result:

ok single line: 'Yes'

Test #8:

score: 10
Accepted
time: 0ms
memory: 1248kb

input:

46 42 69 42
7 17 11 9
18 5 11 14
10 11 7 18
11 9 4 1

output:

No

result:

ok single line: 'No'

Test #9:

score: 10
Accepted
time: 0ms
memory: 1248kb

input:

48 43 48 67
11 1 9 7
11 14 10 7
9 10 10 1
17 18 19 14

output:

No

result:

ok single line: 'No'

Test #10:

score: 10
Accepted
time: 1ms
memory: 1244kb

input:

64 48 38 45
19 12 8 18
6 15 4 18
15 3 8 2
6 18 18 7

output:

No

result:

ok single line: 'No'

Extra Test:

score: 0
Extra Test Passed