Submission #3011589


Source Code Expand

/*
AtCoder Regular Contest 036 B - 山のデータ
結果:
*/
//#define DEBUG1
//#define DEBUG2
//#define DEBUGF

#define _USE_MATH_DEFINES
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <ctype.h>
#include <limits.h>    
#define inf (INT_MAX-1)
#define INF 9223372036854775807
#define EPS 1e-10
#define sq(n) ((n)*(n))
#define rep(i,n) for(i=0;i<n;i++)
#define rev(i,n) for(i=n-1;i>=0;i--)
#define sort(a,n) qsort(a,n,sizeof(TYPE),cmp)
#define sort_r(a,n) qsort(a,n,sizeof(TYPE),cmp_r);
#define chsort(s,n) qsort(s,n,sizeof(char),cmp)
#define chsort_r(s,n) qsort(s,n,sizeof(char),char_cmp_r);
#define TYPE long long
#define MEMSET(a) memset(a,0,sizeof(a))
const int mod = (int)1e09 + 7;

int in(void) {
	int i; scanf("%d", &i);
	return i;
}
long long llin(void) {
	long long i; scanf("%lld", &i);
	return i;
}
double din(void) {
	double i; scanf("%lf", &i);
	return i;
}
void chin(char s[]) {
	scanf("%s", s);
}
void print(int a) {
	printf("%d\n", a);
}
void llprint(long long a) {
	printf("%lld\n", a);
}
void dprint(double a) {
	printf("%.10f\n", a);
}
void print2(int a, int b) {
	printf("%d %d\n", a, b);
}
//long long max(long long a, long long b) {
//	return a > b ? a : b;
//}
//long long min(long long a, long long b) {
//	return a<b ? a : b;
//}
double dmax(double a, double b) {
	return a > b ? a : b;
}
int cmp(const void *a, const void *b) {
	return *(TYPE *)a - *(TYPE *)b;
}
int cmp_r(const void *a, const void *b) {
	return *(TYPE *)b - *(TYPE *)a;
}
int char_cmp(const void *a, const void *b) {
	return strcmp((char *)a, (char *)b);
}
int char_cmp_r(const void *a, const void *b) {
	return strcmp((char *)b, (char *)a);
}
void swap(int *a, int *b) {
	int t = *a;
	*a = *b;
	*b = t;
}
long long gcd(long long x, long long y) {
	return x%y ? gcd(y, x%y) : y;
}
long long lcm(long long x, long long y) {
	return x / gcd(x, y)*y;
}

//ここから
TYPE h[300010];
int main() {
	int n;
	//TYPE h[300010];
	int i, b, MAX, ans;

	n = in();
	rep(i, n) { h[i] = llin(); }

	b = 0;
	MAX = 0;
	ans = 0;

	for (i = b; i < n; i++) {
		if (i == 0) {
			if (h[i] < h[i+1]) {
				ans = max(i - b, MAX);
				b = i;
			}
		}
		else if (i > 0 && i < n - 1) {
			if (h[i - 1] > h[i] && h[i + 1] > h[i]) {
				ans = max(i - b, MAX);
				b = i;
			}
		}
		if (i == n - 1) {
			if (h[i - 1] > h[i]) {
				ans = max(i - b, MAX);
				b = i;
			}
		}
	}

	print(ans+1);

#ifdef DEBUGF
	getch();
#endif
	return 0;
}

Submission Info

Submission Time
Task B - 山のデータ
User chonerie
Language C (GCC 5.4.1)
Score 0
Code Size 2575 Byte
Status CE

Compile Error

./Main.c: In function ‘main’:
./Main.c:107:11: warning: implicit declaration of function ‘max’ [-Wimplicit-function-declaration]
     ans = max(i - b, MAX);
           ^
./Main.c: In function ‘in’:
./Main.c:31:9: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
  int i; scanf("%d", &i);
         ^
./Main.c: In function ‘llin’:
./Main.c:35:15: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
  long long i; scanf("%lld", &i);
               ^
./Main.c: In function ‘din’:
./Main.c:39:12: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
  double i; scanf("%lf", &i);
            ^
./Main.c: In function ‘chin’:
./Main.c:43:2: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
  scanf("%s", s);
  ^
/tmp/ccjW97Mn.o: In function `main':
Main.c:(.text.startup+0xbe): undefined reference to `max'
Main....