Cod sursa(job #3327919)

Utilizator Roberto_CChirvasitu Roberto Roberto_C Data 5 decembrie 2025 17:30:58
Problema Algoritmul lui Dijkstra Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.25 kb
#include <iostream>
#include <fstream>
#define D 62

using namespace std;

ifstream fin ("trigrame.in");
ofstream fout ("trigrame.out");

int frecv[D][D][D];

int main()
{
    int dis=0,apar=0,maxi=-1,a1,b1,c1;
    char a,b,c;
    fin>>a>>b;
    while(fin>>c)
    {
        if(a>='0' && a<='9')
            a1=a-'0';
        else if(a>='A' && a<='Z')
            a1=a-'A'+10;
        else
            a1=a-'a'+36;
        if(b>='0' && b<='9')
            b1=b-'0';
        else if(b>='A' && b<='Z')
            b1=b-'A'+10;
        else
            b1=b-'a'+36;
        if(c>='0' && c<='9')
            c1=c-'0';
        else if(c>='A' && c<='Z')
            c1=c-'A'+10;
        else
            c1=c-'a'+36;
        frecv[a1][b1][c1]++;
        a=b;
        b=c;
    }
    for(int i=0;i<D;i++)
        for(int j=0;j<D;j++)
            for(int k=0;k<D;k++)
            {
                if(frecv[i][j][k]!=0)
                    dis++;
                if(frecv[i][j][k]>maxi)
                {
                    maxi=frecv[i][j][k];
                    apar=1;
                }
                else if(maxi==frecv[i][j][k])
                    apar++;
            }
    fout<<dis<<" "<<maxi<<" "<<apar;
    return 0;
}