Plataforma: URI
Problema: 1140
Enunciado:
Fiona sempre amou poesia, e recentemente descobriu uma forma poética fascinante. Tautogramas são um caso especial de aliteração, que é a ocorrência da mesma letra no início de palavras adjacentes. Em particular, uma sentença é um tautograma se todas suas palavras começam com a mesma letra.
Por exemplo, as seguintes sentenças são tautogramas:
- Flowers Flourish from France
- Sam Simmonds speaks softly
- Peter pIckEd pePPers
- truly tautograms triumph
Fiona quer deslumbrar seu namorado com uma carta romântica repleta desse tipo de sentenças. Por favor, ajude Fiona a verificar se cada sentença que ela escreveu é um tautograma ou não.
Linguagem: C
Solução:
#include <ctype.h> #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { int r, quant; char linha[2700], primeiro, proximo, *token; while (fgets(linha, 3000, stdin) != NULL) { r = 1; primeiro = toupper(linha[0]); if (primeiro == '*') exit(0); quant = 0; token = strtok(linha, " \n"); while (token != NULL) { proximo = toupper(token[0]); token = strtok(NULL, " \n"); if (isalpha(primeiro) && isalpha(proximo) && primeiro != proximo) r = 0; quant++; } if (r || !quant) printf("Y\n"); else printf("N\n"); } return 0; }