Submission #823198

# Submission time Handle Problem Language Result Execution time Memory
823198 2023-08-12T09:16:36 Z rainboy Real Mountains (CCO23_day1problem2) C
0 / 25
0 ms 212 KB
#include <stdio.h>

#define N	1000000
#define INF	0x3f3f3f3f
#define MD	1000003

int min(int a, int b) { return a < b ? a : b; }

int main() {
	static int aa[N];
	int n, i, l, r, a, b, k, ans;

	scanf("%d", &n);
	for (i = 0; i < n; i++)
		scanf("%d", &aa[i]);
	ans = 0;
	for (a = 1; ; a++) {
		l = 0;
		while (l < n && aa[l] <= a)
			l++;
		if (l == n)
			break;
		r = n - 1;
		while (r >= 0 && aa[r] <= a)
			r--;
		k = 0;
		for (i = l; i <= r; i++)
			if (aa[i] <= a)
				k++;
		if (k > 0) {
			ans += (long long) k * (a * 3 + 2) - (a + 1) * 2;
			b = INF;
			for (i = l; i <= r; i++)
				if (aa[i] > a)
					b = min(b, aa[i]);
				else {
					ans += b;
					break;
				}
			b = INF;
			for (i = r; i >= l; i--)
				if (aa[i] > a)
					b = min(b, aa[i]);
				else {
					ans += b;
					break;
				}
		}
	}
	printf("%d\n", ans);
	return 0;
}

Compilation message

Main.c: In function 'main':
Main.c:13:2: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
   13 |  scanf("%d", &n);
      |  ^~~~~~~~~~~~~~~
Main.c:15:3: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
   15 |   scanf("%d", &aa[i]);
      |   ^~~~~~~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Incorrect 0 ms 212 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Incorrect 0 ms 212 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Incorrect 0 ms 212 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Incorrect 0 ms 212 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Incorrect 0 ms 212 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Incorrect 0 ms 212 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Incorrect 0 ms 212 KB Output isn't correct
4 Halted 0 ms 0 KB -