#include <stdio.h>

int brs=0,bri=0,bro=0,u[300000],v[300000],a[300000][300000],put=0;
char c[300000];

int rek(int cvor1,int cvor2,int zadnja_grana,int brs, int bri, int bro)
{
        if(zadnja_grana>-1)
        {
            if(c[zadnja_grana]=='S')
        {
            brs++;
        }
        else if(c[zadnja_grana]=='I')
        {
            bri++;
        }
        else
        {
            bro++;
        }
    }
    if(cvor1==cvor2)
    {
        if(brs==bri && bri==bro)
        {
            put++;
        }
    }
    else
    {
        int j=0;
        while(a[cvor1][j]>-1)
        {
            if(a[cvor1][j]!=zadnja_grana)
            {


                int novicvor;
                if(cvor1==u[a[cvor1][j]]-1)
                {
                    novicvor=v[a[cvor1][j]]-1;
                }
                else
                {
                    novicvor=u[a[cvor1][j]]-1;
                }
                rek(novicvor,cvor2,a[cvor1][j],brs,bri,bro);
            }
            j++;
        }
    }
}

int main()
{
    int n;
    scanf("%d",&n);
    for(int i=0;i<n-1;i++)
    {
        scanf("%d %d %c",&u[i],&v[i],&c[i]);
    }
    for(int i=0;i<n;i++)
    {
        int j=0;
        for(int p=0;p<n-1;p++)
        {
            if(u[p]==i+1 || v[p]==i+1)
            {
                a[i][j]=p;
                j++;
            }
        }
        a[i][j]=-1;
    }
    for(int i=0;i<n-1;i++)
    {
        for(int j=i+1;j<n;j++)
        {
            rek(i,j,-1,0,0,0);
        }
    }
    printf("%d",put);
    return 0;
}