QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#54810#2971. Wordle with FriendsBeevo#WA 4ms3732kbC++231.2kb2022-10-10 16:25:242022-10-10 16:25:26

Judging History

你现在查看的是最新测评结果

  • [2023-08-10 23:21:45]
  • System Update: QOJ starts to keep a history of the judgings of all the submissions.
  • [2022-10-10 16:25:26]
  • 评测
  • 测评结果:WA
  • 用时:4ms
  • 内存:3732kb
  • [2022-10-10 16:25:24]
  • 提交

answer

#include <bits/stdc++.h>

#define el '\n'
#define ll long long
#define ld long double

#define Beevo ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);

using namespace std;

bool valid(string &s, string &t, string &p) {
    for (int i = 0; i < 5; i++) {
        if (p[i] == 'G' && s[i] != t[i])
            return 0;
    }

    vector<int> freq(26), mn(26), mx(26, 6);
    for (int i = 0; i < 5; i++) {
        if (p[i] == 'G')
            continue;

        freq[s[i] - 'A']++;

        if (p[i] == '-')
            mx[t[i] - 'A'] = mn[t[i] - 'A'];
        else
            mn[t[i] - 'A']++;
    }

    for (int i = 0; i < 26; i++) {
        if (freq[i] > mx[i] || freq[i] < mn[i])
            return 0;
    }

    return 1;
}

void testCase() {
    int n, m;
    cin >> n >> m;

    vector<string> v(n), p(n);
    for (int i = 0; i < n; i++)
        cin >> v[i] >> p[i];

    string s;
    while (m--) {
        cin >> s;

        bool can = 1;
        for (int i = 0; i < n; i++)
            can &= valid(s, v[i], p[i]);

        if (can)
            cout << s << el;
    }
}

signed main() {
    Beevo

    int T = 1;
//    cin >> T;

    while (T--)
        testCase();

    return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 2ms
memory: 3636kb

input:

2 5
BERRY -G---
APPLE ---YY
MELON
BERRY
LEMON
LIMES
APPLE

output:

MELON
LEMON

result:

ok 2 lines

Test #2:

score: 0
Accepted
time: 2ms
memory: 3560kb

input:

3 5
BERRY -G---
APPLE ---YY
LIMES G-GY-
APPLE
BERRY
LEMON
LIMES
MELON

output:

LEMON

result:

ok single line: 'LEMON'

Test #3:

score: 0
Accepted
time: 2ms
memory: 3652kb

input:

3 5
BLANK --Y--
SIGHS ----G
STORM YGG-Y
ATOMS
BLANK
MOATS
SIGHS
STORM

output:

ATOMS

result:

ok single line: 'ATOMS'

Test #4:

score: 0
Accepted
time: 2ms
memory: 3724kb

input:

4 5
FRUIT -G--Y
NUTTY --Y--
ROOTS Y--YG
SEEDS -YG-G
FRUIT
NUTTY
ROOTS
SEEDS
TREES

output:

TREES

result:

ok single line: 'TREES'

Test #5:

score: 0
Accepted
time: 3ms
memory: 3560kb

input:

4 8916
ALPHA ----G
GAMMA Y--GG
DELTA ----G
OMEGA -Y-YG
AAHED
AALII
AARGH
ABACA
ABACI
ABACK
ABAFT
ABAKA
ABAMP
ABASE
ABASH
ABATE
ABAYA
ABBAS
ABBES
ABBEY
ABBOT
ABEAM
ABELE
ABETS
ABHOR
ABIDE
ABLED
ABLER
ABLES
ABMHO
ABODE
ABOHM
ABOIL
ABOMA
ABOON
ABORT
ABOUT
ABOVE
ABRIS
ABUSE
ABUTS
ABUZZ
ABYES
ABYSM
ABYSS...

output:

SIGMA

result:

ok single line: 'SIGMA'

Test #6:

score: 0
Accepted
time: 1ms
memory: 3648kb

input:

3 8916
SHARP G----
HEART -----
KNACK -G---
AAHED
AALII
AARGH
ABACA
ABACI
ABACK
ABAFT
ABAKA
ABAMP
ABASE
ABASH
ABATE
ABAYA
ABBAS
ABBES
ABBEY
ABBOT
ABEAM
ABELE
ABETS
ABHOR
ABIDE
ABLED
ABLER
ABLES
ABMHO
ABODE
ABOHM
ABOIL
ABOMA
ABOON
ABORT
ABOUT
ABOVE
ABRIS
ABUSE
ABUTS
ABUZZ
ABYES
ABYSM
ABYSS
ACARI
ACERB...

output:

SNIBS
SNIFF
SNOBS
SNOGS
SNOOD
SNOOL
SNOWS
SNOWY
SNUBS
SNUFF
SNUGS

result:

ok 11 lines

Test #7:

score: 0
Accepted
time: 3ms
memory: 3540kb

input:

3 8916
MOUNT -G---
AREAS -Y---
KICKS --GG-
AAHED
AALII
AARGH
ABACA
ABACI
ABACK
ABAFT
ABAKA
ABAMP
ABASE
ABASH
ABATE
ABAYA
ABBAS
ABBES
ABBEY
ABBOT
ABEAM
ABELE
ABETS
ABHOR
ABIDE
ABLED
ABLER
ABLES
ABMHO
ABODE
ABOHM
ABOIL
ABOMA
ABOON
ABORT
ABOUT
ABOVE
ABRIS
ABUSE
ABUTS
ABUZZ
ABYES
ABYSM
ABYSS
ACARI
ACERB...

output:

ROCKY

result:

ok single line: 'ROCKY'

Test #8:

score: -100
Wrong Answer
time: 4ms
memory: 3732kb

input:

3 8916
IRATE Y--G-
STAIR YY-Y-
RAISE --YY-
AAHED
AALII
AARGH
ABACA
ABACI
ABACK
ABAFT
ABAKA
ABAMP
ABASE
ABASH
ABATE
ABAYA
ABBAS
ABBES
ABBEY
ABBOT
ABEAM
ABELE
ABETS
ABHOR
ABIDE
ABLED
ABLER
ABLES
ABMHO
ABODE
ABOHM
ABOIL
ABOMA
ABOON
ABORT
ABOUT
ABOVE
ABRIS
ABUSE
ABUTS
ABUZZ
ABYES
ABYSM
ABYSS
ACARI
ACERB...

output:

BINTS
BITTS
CHITS
CISTS
DINTS
DOITS
DUITS
FISTS
FLITS
GIFTS
GILTS
GISTS
HILTS
HINTS
HISTS
JILTS
KILTS
KISTS
KNITS
LIFTS
LILTS
LINTS
LISTS
MILTS
MINTS
MISTS
MISTY
MITTS
OBITS
OMITS
PINTS
QUITS
SIFTS
SILTS
SILTY
SIXTH
SIXTY
SKITS
SLITS
SMITH
SNITS
SPITS
SPITZ
SUITS
SWITH
TILTS
TINTS
TOITS
TWITS
UNITS
...

result:

wrong answer 3rd lines differ - expected: 'CISTS', found: 'CHITS'