📄 3247029_ce.cpp
字号:
////////////////////////////////////
#include <iostream.h>
#include "stdlib.h"
#include "search.h"
int N,K,T;
int max;
struct Gangster{
int s,p,t;
};
Gangster g[100];
int best[100];
int compare(const void* a, const void* b) {
if ( ((Gangster*)a)->t<((Gangster*)b)->t ) return -1;
if ( ((Gangster*)a)->t>((Gangster*)b)->t ) return 1;
return 0;
}
int main()
{
cin>>N>>K>>T;
for ( int i=0; i<N; i++) cin>>g[i].t;
for ( i=0; i<N; i++) cin>>g[i].p;
for ( i=0; i<N; i++) cin>>g[i].s;
qsort(g, N, sizeof(Gangster), compare);
max = 0;
for ( i=0; i<N; i++) {
best[i] = -1;
if ( g[i].t>=g[i].s ) best[i] = 0;
for ( int dt,ds,j=0; j<i; j++)
if ( ( best[j]>best[i] ) && (dt = g[i].t-g[j].t)>=(ds=g[i].s-g[j].s) && dt>=-ds )
best[i] = best[j];
if ( best[i]>=0 ) best[j] += g[i].p;
if ( best[i]>max ) max = best[i];
}
cout<<max;
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -