UVa 10293

来源:互联网 发布:网络分线盒图片 编辑:程序博客网 时间:2024/05/29 07:05

題目:統計一篇文章中的不同長度的單詞分別出現的次數。

分析:字符串。統計每個單詞的長度,然後計數輸出。

說明:一個一個字符的讀入會TLE╮(╯▽╰)╭。

#include <stdio.h>#include <stdlib.h>int words_of_length[32];int is_separator(char ch){return ch == ' ' || ch == '.' || ch == ',' || ch == '?' || ch == '!';}int is_alphabet(char ch) {return (ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z');}int main(){char buf[81];while (~scanf("%s",buf)) {for (int i = 0; i <= 30; ++ i) {words_of_length[i] = 0;}int length = 0, last = '#';while (buf[0] != '#') {for (int i = 0; buf[i]; ++ i) {if (is_separator(buf[i])) {words_of_length[length] ++;length = 0;}else if (i == 0 && last != '-') {words_of_length[length] ++;length = is_alphabet(buf[i]);}else if (is_alphabet(buf[i])) {length ++;}last = buf[i];}scanf("%s",buf);}for (int i = 1; i <= 30; ++ i) {if (words_of_length[i]) {printf("%d %d\n",i,words_of_length[i]);}}puts("");}return 0;}


0 0
原创粉丝点击