社区讨论

求助:为什么我会RE#3

学术版参与者 3已保存回复 5

讨论操作

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

当前回复
5 条
当前快照
1 份
快照标识符
@lo1xtqo1
此快照首次捕获于
2023/10/23 04:45
2 年前
此快照最后确认于
2023/11/03 05:11
2 年前
查看原帖
代码没有任何问题,测试点下载下来也能输出正确答案,但提交上去就是RE#3:
CPP
#include<iostream>
#include<algorithm>

namespace FastIO
{
	template<typename T> T read() {T ans=0;bool pd=1;char in=getchar();while(in<'0' || in>'9'){pd=in-'-';in=getchar();}while(in>='0' && in<='9'){ans=ans*10+in-'0';in=getchar();}return pd ? ans : -ans;}
	template<typename T> void write(T in) {if(in) write<T>(in/10),putchar(in%10+'0');}
	template<typename T> void print(T in,char a) {if(in==0) putchar('0');if(in<0) putchar('-'),in=-in;write<T>(in);putchar(a);}
}
using namespace FastIO;
using namespace std;

struct pc {int x,v;} in[50005];
bool cmp(pc a,pc b)
{return a.x<b.x;}
int main()
{
	int n=read<int>(),m=read<int>(),pt=0;
	long long ct=0;
	if(n==0 || m==0)
	{print<int>(ct,'\n');return 0;}
	for(register int i=0;i<m;i++)
	{in[i].x=read<int>(),in[i].v=read<int>();}
	sort(in,in+m,cmp);
	while(n>=in[pt].v)
	{
		n-=in[pt].v;
		ct+=in[pt].v*in[pt].x;
		pt++;
	}
	ct+=n*in[pt].x;
	print<int>(ct,'\n');
	return 0;
}
附:#3测试点:
输入:
2 1
10 2
输出:
20

回复

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

正在加载回复...