请问注释内容加与不加的区别?
查看原帖
请问注释内容加与不加的区别?
370697
zjs1236楼主2024/6/20 07:36

如果加了注释内容,会WA#4

数据:1 1 0 0 4 8

不加注释正确输出:83

加了注释后输出:123

请问这是为什么?注释预处理的 b[i] * j 不应该在后面都遍历过吗?

#define ll int

#include <bits/stdc++.h>

using namespace std;

const int N = 1e3 + 5;

int sum, len;
int b[7] = {0, 1, 2, 3, 5, 10, 20}, a[N];
bool vis[N];


int main() {
	ios::sync_with_stdio(false), cin.tie(0);
	for (int i = 1; i <= 6; i++) {
        cin >> a[i];
        sum += a[i] * b[i];
        // for (int j = 1; j <= a[i]; j++)
        //   vis[j * b[i]] = true;
    }
    vis[0] = true;
    for (int i = 1; i <= 6; i++)
        for (int j = sum; j >= b[i]; j--)
            for (int k = 1; k <= a[i] && b[i] * k <= j; k++)
                vis[j] |= vis[j - b[i] * k];
    int ans = 0;
    for (int i = 1; i <= sum; i++)
        if (vis[i]) ans++;
    cout << "Total=" << ans;
	return 0;
}
2024/6/20 07:36
加载中...