結果

問題 No.568 じゃんじゃん 落とす 委員会
ユーザー vjudge1
提出日時 2025-05-17 17:46:10
言語 C++17(gcc12)
(gcc 12.3.0 + boost 1.87.0)
結果
WA  
実行時間 -
コード長 867 bytes
コンパイル時間 4,370 ms
コンパイル使用メモリ 209,872 KB
実行使用メモリ 7,844 KB
最終ジャッジ日時 2025-05-17 17:46:17
合計ジャッジ時間 6,674 ms
ジャッジサーバーID
(参考情報)
judge4 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other WA * 26
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.cpp: In function 'int main()':
main.cpp:34:17: warning: 'l1' is used uninitialized [-Wuninitialized]
   34 |         while(l1<=r1){
      |               ~~^~~~
main.cpp:33:14: note: 'l1' was declared here
   33 |         }int l1,r1=mxa+1;
      |              ^~

ソースコード

diff #

#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N=100010;
int xx[N],a[N],b[N];
int n,m,ans=LLONG_MAX;
bool P(int x,int y)
{
	int cur=0,cnt2=0;
	for(int i=1;i<=n;++i){
		cur=xx[i];
		cur+=(a[i]>=x);
		cur+=(b[i]>=y);
		cnt2+=(cur>=2);
	}
	return cnt2>=m;
}
int sc(int x,int y){
	int ress=0,now=0;
	for(int i=1;i<=n;++i)	{
		now=xx[i];
		now+=(a[i]>=x);
		now+=(b[i]>=y);
		ress+=(now>=3);
	}return ress;
}signed main(){
	
	cin>>n>>m;
	int mxa=-1,mxb=-1;
	for(int i=1;i<=n;++i){
		cin>>xx[i]>>a[i]>>b[i];
		mxa=max(mxa,a[i]);mxb=max(mxb,b[i]);
	}int l1,r1=mxa+1;
	while(l1<=r1){
		int mid1=l1+(l1+r1)/2;
		int l=0,r=mxb+1,res=-1;
		while(l<=r){
			int mid=l+(r-l)/2;
			if(P(mid1,mid)){
				res=mid;
				l=mid+1;
			}else r=mid-1;
		}if(sc(mid1,res)<ans){
			ans=min(ans,sc(mid1,res));r1=mid1-1;
		}else l1=mid1+1;
	}cout<<ans;
	return 0;
}
0