CSES - Putka Open 2015 – finaali - Results
Submission details
Task:Sanat
Sender:
Submission time:2015-12-20 16:20:23 +0200
Language:C++
Status:READY
Result:64
Feedback
groupverdictscore
#1ACCEPTED64
Test results
testverdicttimescore
#1ACCEPTED0.10 s64details

Compiler report

input/code.cpp: In function 'int suomea(std::string)':
input/code.cpp:8:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for(int i = 0; i < s.size(); ++i) {
                      ^
input/code.cpp:9:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         if(i + 2 < s.size()) {
                  ^
input/code.cpp:15:19: warning: array subscript has type 'char' [-Wchar-subscripts]
         ++cnt[s[i]];
                   ^

Code

#include <iostream>
#include <set>
using namespace std;
set<char> vokaalit;
int suomea(string s) {
    float vo; 
    int cnt[1000] = {0};
    for(int i = 0; i < s.size(); ++i) {
        if(i + 2 < s.size()) {
            if(vokaalit.count(s[i]) + vokaalit.count(s[i+1]) + vokaalit.count(s[i+2]) == 0) {
                return 0;
            }
        }
        vo += vokaalit.count(s[i]);
        ++cnt[s[i]];
    }
    int lol = 0;
    if(0) {
        if(cnt['x'] || cnt['z'] || cnt['q'] || cnt['w']) lol += 5;
        if(cnt['d'] || cnt['f'] || cnt['g'] || cnt['b'] || cnt['c']) lol += 2;
        //if(s.back() == 'i') return 1;
        if(s.back() == 'y') lol += 3;
        if(s.back() == 'i') lol -= 4;
        if(s.back() == 'a') lol -= 4 ;
        if(vokaalit.count(s.back()) == 0) lol += 5;
        if(vo/s.size() > 0.44) {
            lol -= 4;
        }
        if(lol >= 3) return 0;
        return 1;
    }
    if(1) {
        if(cnt['x'] || cnt['z'] || cnt['q'] || cnt['w'] || cnt['c']) return 0;
        //if(s.back() == 'i') return 1;
        if(s.back() == 'y') return 0;
        if(s.back() == 'i') return 1;
        if(s.back() == 'a') return 1;
        if(vokaalit.count(s.back()) == 0) return 0;
        else return 1;
        if(vo/s.size() > 0.44) {
            return 1;
        }
        return 0;
    }
}
int main() {
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    vokaalit.insert('a');
    vokaalit.insert('e');
    vokaalit.insert('i');
    vokaalit.insert('o');
    vokaalit.insert('u');
    vokaalit.insert('y');
    int n;
    cin>>n;
    for(int i = 0; i < n; ++i) {
        string s;
        cin>>s;
        if(suomea(s)) {
            cout<<"10-4\n";
        }
        else {
            cout<<"QAQ\n";
        }
    }
}

Test details

Test 1

Verdict: ACCEPTED

input
95000
pursua
zoomata
mantelilastu
jamming
...

correct output
10-4
10-4
10-4
QAQ
QAQ
...

user output
10-4
QAQ
10-4
QAQ
QAQ
...