105452024-04-04 20:25:38111Az IKPC legerősebb csapatacpp17Hibás válasz 0/100448ms1046868 KiB
#include<bits/stdc++.h>
using namespace std;

#define int long long

signed main(){
	ios::sync_with_stdio(false);
	cin.tie(nullptr);
	int N,K;
	cin>>N>>K;
	vector<int>a(N+1),b(N+1);
	for(int i=1;i<=N;i++){
		cin>>a[i];
	}
	for(int i=1;i<=N;i++){
		cin>>b[i];
	}
	vector<vector<int>>dp0(K+1,vector<int>(N+1,0)),dp1(K+1,vector<int>(N+1,0));
	for(int i=1;i<=K;i++){
		for(int j=1;j<=N;j++){
			dp0[i][j]=max(dp0[i][j-1],dp0[i-1][j]);
			dp0[i][j]=max(dp0[i][j],dp0[i-1][j-1]+b[j]);
			dp1[i][j]=max(dp1[i][j],dp0[i-1][j-1]+b[j]);
			if(a[j-1]<a[j]){
				dp1[i][j]=max(dp1[i][j],dp1[i][j-1]+b[j]);
			}
			for(int k=j-1;k>=0&&a[k]<a[j];k--){
				dp1[i][j]=max(dp1[i][j],dp1[i][k]+b[j]);
				if(k>=2&&a[k-1]<a[k]){
					break;
				}
			}
			dp0[i][j]=max(dp0[i][j],dp1[i][j]);
		}
	}
	cout<<dp0[K][N]<<'\n';
	return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1976 KiB
2Elfogadva3ms2196 KiB
subtask20/9
3Elfogadva2ms2208 KiB
4Hibás válasz2ms2132 KiB
5Hibás válasz3ms2260 KiB
6Elfogadva2ms2296 KiB
7Elfogadva3ms2424 KiB
8Hibás válasz3ms2664 KiB
9Hibás válasz3ms2892 KiB
10Elfogadva2ms2972 KiB
11Hibás válasz3ms3104 KiB
12Hibás válasz3ms3324 KiB
subtask30/7
13Elfogadva10ms19460 KiB
14Hibás válasz10ms17576 KiB
15Hibás válasz32ms54376 KiB
16Elfogadva128ms216876 KiB
17Elfogadva172ms292776 KiB
18Elfogadva86ms146588 KiB
19Elfogadva86ms146872 KiB
20Hibás válasz9ms15468 KiB
21Elfogadva305ms506648 KiB
subtask40/11
22Futási hiba358ms1046868 KiB
23Futási hiba360ms1046856 KiB
24Futási hiba358ms1046832 KiB
25Futási hiba442ms1046596 KiB
26Futási hiba360ms1046572 KiB
27Futási hiba363ms1046568 KiB
subtask50/22
28Hibás válasz54ms91264 KiB
29Elfogadva97ms142480 KiB
30Elfogadva89ms147272 KiB
31Hibás válasz158ms259920 KiB
32Hibás válasz28ms48300 KiB
33Hibás válasz134ms228708 KiB
34Hibás válasz13ms21388 KiB
subtask60/51
35Futási hiba363ms1046380 KiB
36Futási hiba365ms1046356 KiB
37Futási hiba448ms1046124 KiB
38Futási hiba365ms1046124 KiB
39Futási hiba365ms1046116 KiB
40Futási hiba361ms1046116 KiB
41Futási hiba365ms1046120 KiB
42Futási hiba363ms1046076 KiB
43Futási hiba363ms1046076 KiB
44Futási hiba361ms1046100 KiB
45Futási hiba363ms1046104 KiB