답안 #639367

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
639367 2022-09-09T16:37:17 Z starchan 걷기 (NOI12_walking) C++17
25 / 25
1 ms 320 KB
#include<bits/stdc++.h>
using namespace std;
#define int long long
#define in pair<int, int>
#define f first
#define s second
#define pb push_back
#define pob pop_back
#define INF (int)1e17
#define MX (int)3e5+5
#define fast() ios_base::sync_with_stdio(false); cin.tie(NULL)
signed main()
{
	fast();
	int l, n;
	cin >> l >> n;
	vector<in> tv(n+1);
	tv[0] = {-1,0};
	vector<int> dp(n+1);
	for(int i = 1; i <= n; i++)
		cin >> tv[i].f >> tv[i].s;
	sort(tv.begin(), tv.end());
	dp[1] = 1;
	int ans = 1;
	for(int i = 2; i <= n; i++)
	{
		dp[i] = 0;
		for(int j = 1; j < i; j++)
		{
			int prod = tv[i].s*tv[j].s;
			if((l*tv[j].s + tv[i].f*prod) < (l*tv[i].s + tv[j].f*prod))
				dp[i] = max(dp[i], dp[j]);	
		}
		dp[i]++;
		ans = max(ans, dp[i]);
	}
	cout << ans;
	return 0;
}	
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Correct 0 ms 320 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 316 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Correct 0 ms 212 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 1 ms 212 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 1 ms 212 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 320 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 1 ms 212 KB Output is correct