답안 #841356

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
841356 2023-09-01T14:45:44 Z alex_2008 K개의 묶음 (IZhO14_blocks) C++14
컴파일 오류
0 ms 0 KB
#define _CRT_SECURE_NO_WARNINGS#include <iostream>using namespace std;const int N = 100100, K = 101;int dp[N][K], a[N], prevv[N], mn[N];int main() {	int n, k;	scanf("%d%d", &n, &k);	a[0] = 1e6 + 10;	for (int i = 1; i <= n; i++) {		scanf("%d", &a[i]);		int j = i - 1;		while (a[j] < a[i]) {			j = prevv[j];		}		prevv[i] = j;	}	dp[0][1] = 1e9 + 10;	dp[1][1]  = a[1];	for (int i = 2; i <= n; i++) {		dp[i][1] = max(dp[i - 1][1], a[i]);	}	for (int j = 2; j <= k; j++) {		for (int i = 1; i <= n; i++) {			mn[i] = 1e9 + 10;			int x = i - 1;			while (x != prevv[i]) {				mn[i] = min(mn[i], mn[x]);				x = prevv[x];			}			mn[i] = min(mn[i], dp[i][j - 1]);		}		for (int i = 0; i <= n; i++) {			if (i < j) dp[i][j] = 1e9 + 10;			else {				dp[i][j] = dp[prevv[i]][j];				dp[i][j] = min(dp[i][j], mn[i] + a[i]);			}		}	}	printf("%d\n", dp[n][k]);}

Compilation message

blocks.cpp:1:9: warning: ISO C++11 requires whitespace after the macro name
    1 | #define _CRT_SECURE_NO_WARNINGS#include <iostream>using namespace std;const int N = 100100, K = 101;int dp[N][K], a[N], prevv[N], mn[N];int main() { int n, k; scanf("%d%d", &n, &k); a[0] = 1e6 + 10; for (int i = 1; i <= n; i++) {  scanf("%d", &a[i]);  int j = i - 1;  while (a[j] < a[i]) {   j = prevv[j];  }  prevv[i] = j; } dp[0][1] = 1e9 + 10; dp[1][1]  = a[1]; for (int i = 2; i <= n; i++) {  dp[i][1] = max(dp[i - 1][1], a[i]); } for (int j = 2; j <= k; j++) {  for (int i = 1; i <= n; i++) {   mn[i] = 1e9 + 10;   int x = i - 1;   while (x != prevv[i]) {    mn[i] = min(mn[i], mn[x]);    x = prevv[x];   }   mn[i] = min(mn[i], dp[i][j - 1]);  }  for (int i = 0; i <= n; i++) {   if (i < j) dp[i][j] = 1e9 + 10;   else {    dp[i][j] = dp[prevv[i]][j];    dp[i][j] = min(dp[i][j], mn[i] + a[i]);   }  } } printf("%d\n", dp[n][k]);}
      |         ^~~~~~~~~~~~~~~~~~~~~~~
/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/crt1.o: in function `_start':
(.text+0x24): undefined reference to `main'
collect2: error: ld returned 1 exit status