[C]本地测试通过,洛谷0分
查看原帖
[C]本地测试通过,洛谷0分
1077401
GHZCreeper楼主2023/10/5 13:28
#define _CRT_SECURE_NO_WARNINGS//使用VS运行的
#include <stdio.h>
#include<math.h>
int main()
{
    int n = 0, ans[40000] = { 0 }, k = 0, mode = 0;
    char code='0';
    //以下为计算n的值,并生成第一行的压缩码
    do {
        scanf("%c", &code);
        n++;
        if (code == '1') {
            if (mode == 0) {
                k++;
            }
            mode = 1;
            ans[k]++;
        }
        else if (code == '0') {
            if (mode == 1) {
                k++;
            }
            mode = 0;
            ans[k]++;
        }
    } while (code != '\n');
    n--;//修正
    //以下为生成2到最后一行的压缩码。(n-1):n-1行;(n+1):n个数码+1个换行;-1:最后一个换行输入后直接显示结果
    for (int i = 0; i < (n - 1) * (n + 1) - 1; i++) {
        scanf("%c", &code);
        if (code == '1') {
            if (mode == 0) {
                k++;
            }
            mode = 1;
            ans[k]++;
        }
        else if (code == '0') {
            if (mode == 1) {
                k++;
            }
            mode = 0;
            ans[k]++;
        }
    }
    printf("%d ", n);
    //输出结果
    for (int i = 0; i <= k; i++) printf("%d ", ans[i]);
    return 0;
}

本地输出:

![例1]("C:\Users\lenovo\Pictures\Screenshots\屏幕截图 2023-10-05 132444.png")

![例2]("C:\Users\lenovo\Pictures\Screenshots\屏幕截图 2023-10-05 132609.png")

![例3]("C:\Users\lenovo\Pictures\Screenshots\屏幕截图 2023-10-05 132640.png")

![例4]("C:\Users\lenovo\Pictures\Screenshots\屏幕截图 2023-10-05 132737.png")

2023/10/5 13:28
加载中...