제출 #731329

#제출 시각아이디문제언어결과실행 시간메모리
731329dubabubaRabbit Carrot (LMIO19_triusis)C++14
0 / 100
1 ms312 KiB
#include <bits/stdc++.h>
using namespace std;

#define int long long

typedef pair<int, int> pii;
#define ff first
#define ss second
#define MP make_pair

const int mxn = 2e5 + 10;
int a[mxn], n, m;
int b[mxn];
int c[mxn];

vector<pii> v;
int LIS() {
	sort(v.begin(), v.end());
	vector<int> dp;
	for(pii p : v) {
		int id = lower_bound(dp.begin(), dp.end(), p.ss) - dp.begin();
		if(id == dp.size()) dp.push_back(p.ss);
		else dp[id] = p.ss;
	}
	return dp.size();
}

signed main() {
	cin >> n >> m;
	for(int i = 1; i <= n; i++) {
		cin >> a[i];
		b[i] = m * i - a[i];
		c[i] = m * i + a[i];

		if(b[i] >= 0)
			v.push_back(MP(b[i], c[i]));
	}

	cout << n - LIS();
	return 0;
}

컴파일 시 표준 에러 (stderr) 메시지

triusis.cpp: In function 'long long int LIS()':
triusis.cpp:22:9: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   22 |   if(id == dp.size()) dp.push_back(p.ss);
      |      ~~~^~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...