求助大佬,样例过了,但全wa了
  • 板块B3624 猫粮规划
  • 楼主fryfry
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/7/24 16:43
  • 上次更新2024/7/24 17:37:29
查看原帖
求助大佬,样例过了,但全wa了
593369
fryfry楼主2024/7/24 16:43
#include<iostream>
using namespace std;

int n, l, r;
int w[50];
long long plan = 0;

int judge(int x) {
	if (x > r) {
		return 0;
	}
	else if (x < l) {
		return 1;
	}
	else {
		//cout << x << ' ' << plan << '    ';
		plan = plan + 1;
		return 1;
	}
}

void dfs(int s, int sum) {
	if (judge(sum) == 0)return;
	if (s > n)return;
	dfs(s + 1, sum + w[s]);
	dfs(s + 1, sum);
}

int Fread() {
	char x = getchar();
	int a = 0;
	int b = 1;
	while (x < '0' || x>'9') {
		if (x == '-') {
			b = -1;
		}
		x = getchar();
	}
	while (x >= '0' && x <= '9') {
		a = (a * 10) + (x - '0');
		x = getchar();
	}
	return b * a;
}

int Fwrite(int f) {
	if (f == 0) {
		putchar('0');
		return  0;
	}
	if (f < 0) {
		putchar('-');
		f = -f;
	}
	int i = 0;
	char buffer[10000];
	while (f > 0) {
		buffer[i] = f % 10 + '0';
		f = f / 10;
		i++;
	}
	for (int j = i - 1; j >= 0; --j) {
		putchar(buffer[j]);
	}
	return 0;
}

int main() {
	n = Fread();
	l = Fread();
	r = Fread();
	for (int i = 1; i <= n; i++) {
		w[i] = Fread();
	}
	dfs(1, 0);
	Fwrite(plan);
	return 0;
}
2024/7/24 16:43
加载中...