题解 | #简单错误记录#

简单错误记录

http://www.nowcoder.com/practice/2baa6aba39214d6ea91a2e03dff3fbeb

#include <stdio.h>
#include <string.h>

static char g_input[100][17] = {0};
static int g_num[100][2] = {0}; /* 0 为输入行号,1 为统计数次数 */
int main(int argc, char** argv)
{
    int num = 0, len = 0;
    char tmp[101], *str;
    while (scanf("%s%d", tmp, &g_num[num][0]) != EOF) {
        str = strrchr(tmp, '\\') + 1;
        len = strlen(str);
        if (len > 16) str += len - 16;
        memcpy(g_input[num], str, strlen(str) + 1);
        num++;
    }

    for (int i = 0; i < num; i++) {
        g_num[i][1] = 1;
        for (int j = i + 1; j < num; j++) {
            if ((strcmp(g_input[i], g_input[j]) == 0) && (g_num[i][0] == g_num[j][0])) {
                for (int k = j + 1; k < num; k++) {
                    memcpy(g_input[k - 1], g_input[k], strlen(g_input[k]) + 1);
                    g_num[k - 1][0] = g_num[k][0];
                }
                g_num[i][1]++; num--; j--;
            }
        }
    }

    for (int i = ((0 > (num - 8)) ? 0 : (num - 8)); i < num; i++) printf("%s %d %d\n", g_input[i], g_num[i][0], g_num[i][1]);
    return 0;
}
全部评论

相关推荐

一个菜鸡罢了:哥们,感觉你的简历还是有点问题的,我提几点建议,看看能不能提供一点帮助 1. ”新余学院“别加粗,课程不清楚是否有必要写,感觉版面不如拿来写一下做过的事情,教育经历是你的弱势就尽量少写 2. “干部及社团经历”和“自我评价”删掉 3. 论文后面的“录用”和“小修”啥的都删掉,默认全录用,问了再说,反正小修毕业前肯定能发出来 4. 工作经验和研究成果没有体现你的个人贡献,着重包装一下个人贡献
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务