답안 #305815

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
305815 2020-09-24T01:56:04 Z T0p_ Exhibition (JOI19_ho_t2) C++14
0 / 100
1 ms 384 KB
#include<bits/stdc++.h>
using namespace std;

struct picture
{
	long long s, v;
	bool operator < (const picture & o) const
	{
		return v < o.v;	
	}
};

picture p[100100];
long long f[100100], arr[100100];
stack<long long> stk;

int main()
{
	long long n, m;
	scanf(" %lld %lld",&n,&m);
	for(int i=1 ; i<=n ; i++)
		scanf(" %lld %lld",&p[i].s,&p[i].v);
	for(int i=1 ; i<=m ; i++)
		scanf(" %lld",&f[i]);
	sort(p+1, p+n+1);
	sort(f+1, f+m+1);
	stk.push(0);
	for(int i=1 ; i<=n ; i++)
	{	
		long long l = 1, r = m+1;
		while(l != r)
		{
			long long mid = (l+r)>>1;
			(p[i].s <= f[mid]) ? r = mid : l = mid+1;
		}
		arr[i] = l;
	}
	int idx = 0, ans = 0;
	for(int i=n ; i>=1 ; i--)
		if(arr[i] != m+1)
		{
			idx = i;
			break ;
		}
	if(idx) 
	{
		stk.push(m);
		ans = 1;
		for(long long i=idx-1 ; i>=1 ; i--)
			if(arr[i] < stk.top())
			{
				stk.push(stk.top()-1);
				ans++;
			}
	}
	printf("%lld\n",ans);
	return 0;
}

Compilation message

joi2019_ho_t2.cpp: In function 'int main()':
joi2019_ho_t2.cpp:56:13: warning: format '%lld' expects argument of type 'long long int', but argument 2 has type 'int' [-Wformat=]
   56 |  printf("%lld\n",ans);
      |          ~~~^    ~~~
      |             |    |
      |             |    int
      |             long long int
      |          %d
joi2019_ho_t2.cpp:20:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   20 |  scanf(" %lld %lld",&n,&m);
      |  ~~~~~^~~~~~~~~~~~~~~~~~~~
joi2019_ho_t2.cpp:22:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   22 |   scanf(" %lld %lld",&p[i].s,&p[i].v);
      |   ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
joi2019_ho_t2.cpp:24:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   24 |   scanf(" %lld",&f[i]);
      |   ~~~~~^~~~~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 384 KB Output is correct
2 Correct 0 ms 384 KB Output is correct
3 Incorrect 1 ms 384 KB Output isn't correct
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 384 KB Output is correct
2 Correct 0 ms 384 KB Output is correct
3 Incorrect 1 ms 384 KB Output isn't correct
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 384 KB Output is correct
2 Correct 0 ms 384 KB Output is correct
3 Incorrect 1 ms 384 KB Output isn't correct
4 Halted 0 ms 0 KB -