首页 > 其他分享 >L2-028 秀恩爱分得快

L2-028 秀恩爱分得快

时间:2024-03-27 12:58:55浏览次数:30  
标签:恩爱 t2 t1 int abs maxn stoi L2 028

可恶的模拟,借鉴了别人的思路,这样写很清晰

#include<bits/stdc++.h>
using namespace std;
using ll = long long;
const int N = 1e5+10;
const int inf = 0x3f3f3f3f;
const int mod = 1e9+7;

int n,q,m;

vector<int>a,b;
double g[1010][1010];
double maxn[1010];
set<int>c,d;


void solve()
{
	cin>>n>>m;
	while(m--){
		a.clear(),b.clear();
		int t;cin>>t;
		for(int i=1;i<=t;++i){
			string s;cin>>s;
			if(s[0]=='-'){
				a.push_back(abs(stoi(s)));
				c.insert(abs(stoi(s)));
			}else{
				b.push_back(abs(stoi(s)));
				d.insert(abs(stoi(s)));
			}
		}
		
		for(auto &t1:a){
			for(auto &t2:b){
				g[t1][t2]+=1.0/t;
				g[t2][t1]+=1.0/t;
				maxn[t1] = max(maxn[t1],g[t1][t2]);
				maxn[t2] = max(maxn[t2],g[t2][t1]);
			}
		}
	}
	
	
	string qa,qb;cin>>qa>>qb;
	int tema,temb;
	tema = abs(stoi(qa));
	temb = abs(stoi(qb));
	
	
	
	if(g[tema][temb]==maxn[tema]&&g[tema][temb]==maxn[temb]){
		cout<<qa<<" "<<qb;return;
	}
	
	
	
	if(qa[0]=='-'){
		for(auto &t:d){
			if(g[tema][t]==maxn[tema]){
				cout<<qa<<" "<<t<<"\n";
			}
		}
	}else{
		for(auto &t:c){
			if(g[tema][t]==maxn[tema]){
				cout<<qa<<" "<<"-"<<t<<"\n";
			}
		}
	}
	
	if(qb[0]=='-'){
		for(auto &t:d){
			if(g[temb][t]==maxn[temb]){
				cout<<qb<<" "<<t<<"\n";
			}
		}		
	}else{
		for(auto &t:c){
			if(g[temb][t]==maxn[temb]){
				cout<<qb<<" "<<"-"<<t<<"\n";
			}
		}		
	}
	
	
	
	
	

}

signed main()
{
	ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
	int _;
	//cin>>_;
	_ = 1;
	while(_--)solve();
	return 0;
}

标签:恩爱,t2,t1,int,abs,maxn,stoi,L2,028
From: https://blog.csdn.net/m0_60921016/article/details/137007857

相关文章

  • PTA L2-033 简单计算器 手写栈
    本题要求你为初学数据结构的小伙伴设计一款简单的利用堆栈执行的计算器。如上图所示,计算器由两个堆栈组成,一个堆栈 S1​ 存放数字,另一个堆栈 S2​ 存放运算符。计算器的最下方有一个等号键,每次按下这个键,计算器就执行以下操作:从 S1​ 中弹出两个数字,顺序为 n1​ 和......
  • V4L2 ioctl调用流程分析
    学习资料:韦东山第三期 可参考:https://www.cnblogs.com/lethe1203/p/18097351video_device->.fops->v4l2_file_operations->.ioctl_ops->v4l2_ioctl_opsv4l2_ioctl_ops可分为两类:INFO_FL_STD:标准的,无需特殊的代码来处理,APP的调用可以直达这些处理函数I......
  • V4L2驱动程序整体框架
    学习资料:韦东山第三期 应用程序调用open/read/write会调用到v4l2_fops的相应函数:接口层再调用到硬件相关的代码,根据打开的文件得到一个video_device(根据此设备号),调用这个video_device里面的vdev->fops->open函数可以看到read和ioctl也是类似的: 应用程序进入到驱动之......
  • V4L2应用程序开发(2)
    参考资料:韦东山第三期  V4L2获取数据的操作流程如下:打开设备ioctlVIDIOC_QUERYCAP:QueryCapbility,查询能力枚举格式、设置格式ioctlVIDIOC_REQBUFS:申请bufferioctlVIDIOC_QUERYBUF和mmap:查询buffer信息、映射ioctlVIDIOC_QBUF:把buffer放入"空闲链表"ioctlVIDIO......
  • Linux V4l2简单使用
    V4L2:VideoforLinuxtwo,缩写Video4Linux2,是Linux内核中的一个框架,提供了一套用于视频设备驱动程序开发的API。它是一个开放的、通用的、模块化的视频设备驱动程序框架,允许Linux操作系统和应用程序与各种视频设备(如摄像头、视频采集卡等)进行交互。V4L2提供了通用的API,使......
  • V4L2应用程序开发(1)
    参考资料:韦东山第三期 v4l2应用程序开发分为两个部分,数据采集流程和控制流程两个部分 数据采集流程:分为空闲链表和完成链表 驱动程序周而复始地做如下事情:从硬件采集到数据把"空闲链表"取出buffer,把数据存入buffer把含有数据的buffer放入"完成链表"APP也会周而......
  • wsl2 ubuntu子系统安装显卡驱动与cuda
    wsl2安装参考文档:http://t.csdnimg.cn/ClwJ9演示安装ubuntu22列出可安装的子系统命令:wsl--list--onlinePSC:\Users\linyu>wsl--list--online以下是可安装的有效分发的列表。使用'wsl.exe--install<Distro>'安装。NAMEF......
  • 2024年天梯成信小赛--L2-3,L2-4补题
    L2-3:Gwen的小剪刀题意:思路:二分美感度+克鲁斯卡尔intn,m,sum0;typedefstructmyp{intu,v;intb,h;};boolcmp(mypa,mypb){returna.h<b.h;}myparr[200005];intfa[100005];intfind(intx){// if(x==fa[x])returnx;// returnfa[x]=find(fa[x......
  • L2-042 老板的作息表
    代码很烂。#include<bits/stdc++.h>usingnamespacestd;structnode{ intstart[10]; intend[10];}s[100000];boolcmp(noden1,noden2){ for(inti=0;i<3;i++){ if(n1.start[i]!=n2.start[i]){ returnn1.start[i]<n2.start[i]; }......
  • L2-019 悄悄关注 (25分) c++代码
    新浪微博上有个“悄悄关注”,一个用户悄悄关注的人,不出现在这个用户的关注列表上,但系统会推送其悄悄关注的人发表的微博给该用户。现在我们来做一回网络侦探,根据某人的关注列表和其对其他用户的点赞情况,扒出有可能被其悄悄关注的人。输入格式:输入首先在第一行给出某用户的关注......