T了一个点
查看原帖
T了一个点
934390
__HappY__楼主2024/7/17 21:54
#include<bits/stdc++.h>
using namespace std;
const int N = 100;
char c[N][N];
int a[N][N];
bool b[N][N];
int life = 0;
int ans = 0;
int main() {
	for(int i = 1; i <= 13; i++) 
		for(int j = 1; j <= 4; j++) 
			cin >> c[i][j];
	for(int i = 1; i <= 13; i++)
		for(int j = 1; j <= 4; j++) {
			if(c[i][j] == '0') a[i][j] = 10;
			if(c[i][j] > '0' && c[i][j] <= '9') a[i][j] = c[i][j] - '0';
			if(c[i][j] == 'A') a[i][j] = 1;
			if(c[i][j] == 'J') a[i][j] = 11;
			if(c[i][j] == 'Q') a[i][j] = 12;
			if(c[i][j] == 'K') a[i][j] = 13;
		}
	
	while(life <= 4) {
		int now;
		now = a[13][1];
		for(int i = 1; i <= 4; i++) a[13][i] = a[13][i + 1];
		if(now == 13) {
			life++;
		}
		while(now != 13) {
			a[now][0] = now;
			for(int i = 5; i >= 1; i--) {
				a[now][i] = a[now][i - 1];
				b[now][i] = b[now][i - 1];
			}
			b[now][1] = 1;
			now = a[now][5];
		}
		life++;
	}
	
	for(int i = 1; i <= 13; i++) {
		if(b[i][1] == 1 && b[i][2] == 1 && b[i][3] == 1 && b[i][4] == 1){
			ans++;
		}
	}
	cout << ans;
	return 0;
}

用数组模拟的,谁能帮忙改一下

2024/7/17 21:54
加载中...