제출 #575746

#제출 시각아이디문제언어결과실행 시간메모리
575746AGEParametriziran (COCI19_parametriziran)C++14
22 / 110
3080 ms35784 KiB
#include<bits/stdc++.h>
#define F first
#define S second
#define int long long
#define pb push_back

using namespace std;
const int N=1e6,M=2e3,mod=1e9+7;

string s[N];
map<string,int>mp;
int cnt[N][27];
main()
{

    int n,m;
    cin>>n>>m;

    for(int i=0;i<n;i++)
        cin>>s[i];

    int ans=n*(n-1);

    for(int i=0;i<n;i++){
        if(s[i][0]!='?')
            cnt[0][s[i][0]-'a']++;

        if(s[i][1]!='?')
            cnt[1][s[i][1]-'a']++;
    }
    int sum0=0;
    for(int i=0;i<26;i++)
        sum0+=cnt[0][i];

    for(int i=0;i<n;i++)
        if(s[i][0]!='?')
            ans-=(sum0-cnt[0][s[i][0]-'a']);

    int sum1=0;

    for(int i=0;i<26;i++)
        sum1+=cnt[1][i];

    for(int i=0;i<n;i++)
        if(s[i][1]!='?')
            ans-=(sum1-cnt[1][s[i][1]-'a']);


    int cntt=0;

    for(int i=0;i<n;i++){

        cntt++,mp[s[i]]++;

    }

    for(int i=0;i<n;i++){

        if(s[i][0]=='?'||s[i][1]=='?')
            continue;

        for(char x='a';x<='z';x++){
            string ss;
            ss.clear();
            ss+=x;
            for(char y='a';y<='z';y++){
                string sss;
                sss=ss+y;
                if(x!=s[i][0]&&y!=s[i][1]){
                    ans+=mp[sss];
                }

            }
        }
    }

    cout<<ans/2<<endl;
    return 0;
}

컴파일 시 표준 에러 (stderr) 메시지

parametriziran.cpp:13:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   13 | main()
      | ^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...