#include #include #include #include #define MOD 1000000007 int main(){ int N; scanf("%d", &N); bool is_control[N]; for(int i = 0; i < N; i++){ char *line; scanf(" %m[^\n]", &line); is_control[i] = line[strlen(line) - 1] == ':'; free(line); } int options[N]; memset(options, 0, sizeof(int) * N); options[0] = 1; for(int i = 1; i <= N; i++){ for(int k = N-2; k >= 0; k--){ if(is_control[i-1]) options[k+1] = options[k]; else options[k] = (options[k] + options[k+1]) % MOD; } if(is_control[i-1]) options[0] = 0; } printf("%d\n", options[0]); return 0; }