为啥错了
2026-05-27 21:37:06
发布于:福建
23阅读
0回复
0点赞
#include <bits/stdc++.h>
using namespace std;
struct thing {
int l , p;
}a[1000005];
int M , N , sum = 0 , mn;
int main( ) {
cin >> M >> N;
for (int i = 1 ; i <= N ; i++) {
cin >> a[i].l >> a[i].p;
}
for (int i = 1 ; i <= N ; i++) {
if (a[i].l == a[i + 1].l) {
if (a[i].p < a[i + 1].p) {
mn = a[i].p;
}
}
sum += a[i].p;
}
cout << sum << endl;
return 0;
}
调了30分钟,还是都是WA,求个大佬帮帮
全部评论 3
#include<bits/stdc++.h> using namespace std; int n,m,sum; bool flag=true; struct id{ int x,y; }a[100001]; bool cmp(id k,id p) { if(k.x==p.x) return k.y<p.y; else if(k.x!=p.x) return k.x<p.x; } int main() { cin>>n>>m; for(int i=1;i<=m;i++) { cin>>a[i].x>>a[i].y; } sort(a+1,a+m+1,cmp); for(int i=1;i<=m;i++) { if (i == 1 || a[i].x != a[i - 1].x) { sum += a[i].y; flag = false; } } cout<<sum; return 0; }昨天 来自 浙江
0你这个样例也过不了是吧
昨天 来自 浙江
0对,瞎写的·
昨天 来自 福建
0#include <bits/stdc++.h> using namespace std; int M,N,sum = 0,mn; int a[100010]; int main( ) { memset(a, 0x3f, sizeof a); cin >> M >> N; for(int i = 1; i <= N; i++) { int l,p; cin >> l >> p; a[l] = min(a[l],p); } for(int i = 1; i <= M; i++) { sum += a[i]; } cout << sum; return 0; }昨天 来自 浙江
0你这个代码问题有点多
昨天 来自 浙江
0
#include<algorithm> extern "C"{ int scanf(const char*,...); int printf(const char*,...); } class id{ public: typedef int int_type; private: int _x=0; int _y=0; public: id(int x=0,int y=0) noexcept: _x(x),_y(y){} id(const id& obj) noexcept: _x(obj._x),_y(obj._y){} id(id&& obj) noexcept: _x(static_cast<id&&>(obj)._x),_y(static_cast<id&&>(obj)._y){} id& operator=(const id& obj) noexcept{ _x=obj._x; _y=obj._y; return *this; } id& operator=(id&& obj) noexcept{ _x=static_cast<id&&>(obj)._x; _y=static_cast<id&&>(obj)._y; return *this; } id& operator()() noexcept{ return *this; } int& x() noexcept{ return _x; } const int& x() const noexcept{ return _x; } int& y() noexcept{ return _y; } const int& y() const noexcept{ return _y; } id& input() noexcept{ scanf("%d%d",&_x,&_y); return *this; } }; static id a[100009]; bool cmp(id k,id p) noexcept{ return (k.x()==p.x()?k.y()<p.y():k.x()<p.x()); } int main(){ int n=0,m=0,sum=0; bool flag=true; scanf("%d%d",&n,&m); for(int i=1;i<=m;i++) a[i].input(); std::sort(a+1,a+m+1,cmp); for(int i=1;i<=m;i++){ if(i==1||a[i].x()!=a[i-1].x()){ sum+=a[i].y(); flag=false; } } printf("%d",sum); }昨天 来自 香港
0


















有帮助,赞一个