QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#878897 | #9549. The Magician | ucup-team134# | RE | 5ms | 11816kb | C++14 | 1.9kb | 2025-02-01 18:39:11 | 2025-02-01 18:39:11 |
Judging History
answer
#include <bits/stdc++.h>
#define ll long long
#define pb push_back
#define f first
#define s second
#define sz(x) (int)(x).size()
#define all(x) x.begin(), x.end()
#define rall(x) x.rbegin(), x.rend()
#define ios ios_base::sync_with_stdio(false);cin.tie(NULL)
#define ld long double
using namespace std;
mt19937 rng(time(NULL));
const int N=19,K=1<<6;
bool vis[N][N][N][N][K];
int ans=0;
void dfs(int a,int b,int c,int d,int msk){
if(vis[a][b][c][d][msk])return;
vis[a][b][c][d][msk]=1;
ans=max(ans,a/5+b/5+c/5+d/5);
vector<int> cn={a,b,c,d};
for(int j=0;j<4;j++){
if(msk&(1<<j)){
for(int i1=0;i1<4;i1++){
for(int i2=0;i2<4;i2++){
for(int i3=0;i3<4;i3++){
cn[i1]--;
cn[i2]--;
cn[i3]--;
if(cn[i1]>=0&&cn[i2]>=0&&cn[i3]>=0){
cn[j]+=3;
dfs(cn[0],cn[1],cn[2],cn[3],msk^(1<<j));
cn[j]-=3;
}
cn[i1]++;
cn[i2]++;
cn[i3]++;
}
}
}
}
}
// Lovers
if(msk&(1<<4))
for(int i=0;i<4;i++){
for(int j=0;j<4;j++){
cn[i]--;
if(cn[i]>=0){
cn[j]++;
dfs(cn[0],cn[1],cn[2],cn[3],msk^(1<<4));
cn[j]--;
}
cn[i]++;
}
}
// Death
if(msk&(1<<5))
for(int i=0;i<4;i++){
for(int j=0;j<4;j++){
cn[i]--;
if(cn[i]>=0&&cn[j]>=0){
cn[j]++;
dfs(cn[0],cn[1],cn[2],cn[3],msk^(1<<4));
cn[j]--;
}
cn[i]++;
}
}
}
void test(){
memset(vis,0,sizeof vis);
ans=0;
int n;
cin >> n;
vector<int> cnt(4);
vector<char> suit={'D','C','H','S'};
for(int i=0;i<n;i++){
string s;
cin >> s;
for(int j=0;j<4;j++){
if(s[1]==suit[j]){
cnt[j]++;
}
}
}
int msk=0;
for(int j=0;j<6;j++){
int t;
cin >> t;
if(t){
msk^=(1<<j);
}
}
dfs(cnt[0],cnt[1],cnt[2],cnt[3],msk);
cout << ans << endl;
}
int main()
{
int t;
cin >> t;
while(t--)test();
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 2ms
memory: 11756kb
input:
4 5 2H 3H 4H 5H 6D 1 1 1 1 0 0 5 2S 3S 4D 5C 6D 0 0 1 0 1 1 5 2S 3S 4D 5C 6D 0 0 1 0 1 0 13 AS 2S 3S 4S 5H 6H 7H 8H 9H TH JH QH KH 0 0 0 0 0 1
output:
1 1 0 2
result:
ok 4 lines
Test #2:
score: 0
Accepted
time: 5ms
memory: 11816kb
input:
13 10 AD 2D 3D 4D 5D 6D 7D 8D 9D TD 0 0 1 0 0 0 10 AH 2D 3D 4D 5D 6D 7D 8D 9D TD 0 0 1 0 0 0 10 AH 2H 3D 4D 5D 6D 7D 8D 9D TD 0 0 1 0 0 0 10 AH 2H 3H 4D 5D 6D 7D 8D 9D TD 0 0 1 0 0 0 10 AH 2H 3H 4H 5D 6D 7D 8D 9D TD 0 0 1 0 0 0 10 AS 2S 3S 4S 5S 6S 7S 8S 9S TS 0 1 0 0 0 0 10 AC 2S 3S 4S 5S 6S 7S 8S ...
output:
2 1 2 2 2 2 1 2 2 2 0 0 0
result:
ok 13 lines
Test #3:
score: -100
Runtime Error
input:
2 52 AH AD AC AS 2H 2D 2C 2S 3H 3D 3C 3S 4H 4D 4C 4S 5H 5D 5C 5S 6H 6D 6C 6S 7H 7D 7C 7S 8H 8D 8C 8S 9H 9D 9C 9S TH TD TC TS JH JD JC JS QH QD QC QS KH KD KC KS 1 1 1 1 1 1 52 AH AD AC AS 2H 2D 2C 2S 3H 3D 3C 3S 4H 4D 4C 4S 5H 5D 5C 5S 6H 6D 6C 6S 7H 7D 7C 7S 8H 8D 8C 8S 9H 9D 9C 9S TH TD TC TS JH J...