社区讨论

咋0分了?感觉挺对的

P1149[NOIP 2008 提高组] 火柴棒等式参与者 2已保存回复 2

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
2 条
当前快照
1 份
快照标识符
@m2n9le8n
此快照首次捕获于
2024/10/24 20:13
去年
此快照最后确认于
2025/11/04 16:18
4 个月前
查看原帖
CPP
#include<iostream>
#include<cstdio>
using namespace std;

const int match[10] = {6, 2, 5, 5, 4, 5, 6, 3, 7, 6};

int nummatch(int num) { // 计算数字所需的火柴数量
    int nm = 0;
    if (num == 0) {
        nm = 6;
    }
    while (num > 0) {
        nm += match[num % 10];
        num /= 10;
    }
    return nm;
}

int main() {
    int n;
    int add, cont = 0; // 初始化计数器
    scanf("%d", &n);
    for (int i = 0; i < 1001; i++) {
        for (int j = 0; j < 1001; j++) {
            add = i + j;
            if (nummatch(i) + nummatch(j) + nummatch(add) == (n - 4)) {
                cont++;
                // printf("%d+%d=%d\n", i, j, add);
                // printf("火柴数量:\n");
                // printf("%d+%d+%d=%d\n", nummatch(i), nummatch(j), nummatch(add), (n - 4));
                // printf("\n");
            }
        }
    }
    printf("%d", cont);
    return 0;
}

回复

2 条回复,欢迎继续交流。

正在加载回复...