답안 #17901

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
17901 2016-01-13T06:51:01 Z chrome 금 캐기 (IZhO14_divide) C++
컴파일 오류
0 ms 0 KB
#include <bits/stdc++.h>

using namespace std;

#define ll long long
#define foreach(it, S) for (__typeof (S.begin()) it = S.begin(); it != S.end(); it++)
#define all(x) x.begin(), x.end()
#define endl '\n'
#define _ ios_base :: sync_with_stdio(false); cin.tie(NULL);

#ifdef inputf
	#define fname ""
#else
	#define fname "" // <- Here
#endif

const double eps = 1e-9;
const int MaxN = int(2e5) + 256;
const int MOD = int(1e9) + 7;

template <typename T> inline T gcd(T a, T b) {
	return b ? gcd (b, a % b) : a;
}

inline bool Palindrome(const string& s) {
	return equal(s.begin(), s.end(), s.rbegin());
}

ll x[MaxN], g[MaxN], e[MaxN];

int main() { // _
	#ifdef lcl
		freopen(fname".in", "r", stdin);
		freopen(fname".out", "w", stdout);
	#endif

	int n; scanf("%d", &n);

	for (int i = 1; i <= n; ++i) {
		scanf("%lld%lld%lld", x + i, g + i, e + i);
		e[i] += e[i - 1];
		g[i] += g[i - 1];
	}

	ll res = 0;
	
	int l = 1, r = 1;

	while (l <= r) {
		if (r == n) {
			while (l <= r) {
				if (x[r] - x[l] <= e[r] - e[l - 1])
					res = max(res, g[r] - g[l - 1]);
				++l;
			}
			break;
		}
		while (r < n && x[r] - x[l] <= e[r] - e[l - 1]) {
			res = max(res, g[r] - g[l - 1]);
			++r;
		} else {
			++l;
		}
	}
	
	printf("%lld", res);
	
	return 0;
}

Compilation message

divide.cpp: In function ‘int main()’:
divide.cpp:61:5: error: ‘else’ without a previous ‘if’
   } else {
     ^
divide.cpp:37:24: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
  int n; scanf("%d", &n);
                        ^
divide.cpp:40:45: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   scanf("%lld%lld%lld", x + i, g + i, e + i);
                                             ^