• HDOJ(1004) Let the Balloon Rise


    这一道题姑且可以叫做“让气球飞”吧。比较简单,AC率算是比较高了,一次性通过。

    大概思路是:首先建立一个字符串数组color_table,用与存储不同的颜色,同时创建一个整型数组count用于存储对应颜色数组中此索引颜色出现的次数。每当程序读入一种颜色,就将其与颜色数组中已经存在的颜色进行比较,如果该颜色已经存在,将对应的颜色的出现计数值加1;如果没找到该颜色,则表示这是新的颜色,则需要将此颜色加入到color_table当中,并将颜色总数total加1。完整的程序代码如下:

     1 #include <stdio.h>
     2 #include <string.h>
     3 #include <stdlib.h>
     4 
     5 #define  MAX_N 1000U  /* 最多可存储的颜色数量 */
     6 #define  MAX_L 15     /* 每种颜色名称的最大长度 */
     7 
     8 int main(void)
     9 {
    10     char color_table[MAX_N][MAX_L];        /* 存储不同种类的颜色名称 */
    11     unsigned int count[MAX_N], total;      /* 存储每种颜色出现的次数和种类数 */
    12     char color[MAX_L];       /* 用于缓存输入的颜色 */
    13     int  i, j, flag, num;  /* 存储将要输入的颜色数量 */
    14     int  popular;            /* 存储最受欢迎颜色索引 */
    15 
    16     scanf("%d", &num);
    17     while (num > 0){
    18         total = 0;
    19         memset(count, 0, sizeof(count));
    20         
    21         for (i = 0; i < num; i++){
    22             scanf("%s", color); /* 读入一种颜色 */
    23 
    24             /* 检查该颜色是否已经存在 */
    25             flag = 0;
    26             for (j = 0; j < total; j++){
    27                 if (strcmp(color, color_table[j]) == 0){
    28                     count[j]++;
    29                     flag = 1;//表示找到该颜色
    30                     break;
    31                 } 
    32             }
    33             /* 该颜色不存在,将其添加到颜色表中 */
    34             if (flag == 0) {
    35                 strcpy(color_table[total], color);
    36                 count[total]++;
    37                 total++;
    38             }
    39         }
    40 
    41         /* 寻找最受欢迎颜色 */
    42         popular = 0;
    43         for (i = 1; i < total; i++){
    44             if (count[popular] < count[i]){
    45                 popular = i;
    46             }
    47         }
    48         printf("%s
    ", color_table[popular]);
    49 
    50         scanf("%d", &num);
    51     }
    52 
    53     return 0;
    54 }
  • 相关阅读:
    词汇表处理脚本
    jLowNote又,我为什么要说又,有bug
    于是按照贴吧某同学的指教,把imageViewer里那个愚蠢的语句改了
    捉到Bug一只,jLowNote里的
    高产赛母猪
    我超喜欢Nimbus风格的!
    专注写记事本三十年
    秒秒钟食言
    别再打了,Java和Python,你们其实都是C
    电话本写完了,发个1.0吧
  • 原文地址:https://www.cnblogs.com/xiaomanon/p/4462940.html
Copyright © 2020-2023  润新知