团体程序设计天梯赛 L2-028. 秀恩爱分得快
1.输入-0(第一部分、第二部分),输出-0
2.只统计与两个人的亲密程度,否则超时
Data:
4 1
4 -0 1 -2 3
-0 1
-0 1
------
4 1
3 1 -2 3
-0 1
-0 1
-0 3
1 -2
------
4 2
4 -0 1 -2 3
2 -0 3
1 -0
1 -0
1 -2
-0 3
/*
1.输入-0(第一部分、第二部分),输出-0
2.只统计与两个人的亲密程度,否则超时
*/
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>
#include <stdbool.h>
#include <set>
#include <vector>
#include <map>
#include <algorithm>
using namespace std; double f[][];
long d[][],sex[],g[]; void print(long x,long y)
{
if (x== && sex[x]==-)
printf("-0");
else
printf("%ld",x*sex[x]);
printf(" ");
if (y== && sex[y]==-)
printf("-0");
else
printf("%ld",y*sex[y]);
printf("\n");
} bool pan(double x,double y)
{
if (fabs(x-y)<0.0000001)
return true;
else
return false;
} bool pan1(double x,double y)
{
if (fabs(x-y)<0.0000001)
return true;
if (x>y)
return true;
else
return false;
} int main()
{
char s[];
long n,m,i,j,k,x,y,w;
double v1,v2;
scanf("%ld%ld",&n,&m);
for (i=;i<=;i++)
for (j=;j<n;j++)
f[i][j]=;
for (k=;k<=m;k++)
{
scanf("%ld",&g[k]);
for (i=;i<=g[k];i++)
{
scanf("%s",s);
if (s[]=='-')
{
w=strlen(s);
strncpy(s,s+,w-);
s[w-]='\0';
d[k][i]=atoi(s);
sex[d[k][i]]=-;
}
else
{
d[k][i]=atoi(s);
sex[d[k][i]]=;
}
}
} scanf("%s",s);
if (s[]=='-')
{
w=strlen(s);
strncpy(s,s+,w-);
s[w-]='\0';
x=atoi(s);
sex[x]=-;
}
else
{
x=atoi(s);
sex[x]=;
} scanf("%s",s);
if (s[]=='-')
{
w=strlen(s);
strncpy(s,s+,w-);
s[w-]='\0';
y=atoi(s);
sex[y]=-;
}
else
{
y=atoi(s);
sex[y]=;
} for (k=;k<=m;k++)
{
for (i=;i<=g[k];i++)
if (d[k][i]==x)
{
for (j=;j<=g[k];j++)
if (sex[d[k][i]]+sex[d[k][j]]==)
f[][d[k][j]]+=1.0/g[k];
} for (i=;i<=g[k];i++)
if (d[k][i]==y)
{
for (j=;j<=g[k];j++)
if (sex[d[k][i]]+sex[d[k][j]]==)
f[][d[k][j]]+=1.0/g[k];
}
} v1=;
for (i=;i<n;i++)
v1=max(v1,f[][i]); v2=;
for (i=;i<n;i++)
v2=max(v2,f[][i]); if (pan(v1,f[][y]) && pan(v2,f[][x]))
print(x,y);
else
{
//maybe maximum=0, double wrong(guess)
for (i=;i<n;i++)
if (pan1(f[][i],v1) && sex[i]+sex[x]==)
print(x,i);
for (i=;i<n;i++)
if (pan1(f[][i],v2) && sex[y]+sex[i]==)
print(y,i);
}
return ;
}
/*
4 1
4 -0 1 -2 3
-0 1 -0 1 ------ 4 1
3 1 -2 3
-0 1 -0 1
-0 3
1 -2 ------ 4 2
4 -0 1 -2 3
2 -0 3
1 -0 1 -0
1 -2
-0 3
*/
团体程序设计天梯赛 L2-028. 秀恩爱分得快的更多相关文章
- 【PTA 天梯赛】L2-028 秀恩爱分得快(模拟)
古人云:秀恩爱,分得快. 互联网上每天都有大量人发布大量照片,我们通过分析这些照片,可以分析人与人之间的亲密度.如果一张照片上出现了 K 个人,这些人两两间的亲密度就被定义为 1/K.任意两个人如果同 ...
- 团体程序设计天梯赛(CCCC) L3009 长城 方法证明
团体程序设计天梯赛代码.体现代码技巧,比赛技巧. https://github.com/congmingyige/cccc_code
- 团体程序设计天梯赛(CCCC) L3021 神坛 的一些错误做法(目前网上的方法没一个是对的) 和 一些想法
团体程序设计天梯赛代码.体现代码技巧,比赛技巧. https://github.com/congmingyige/cccc_code
- 团体程序设计天梯赛(CCCC) L3019 代码排版 方法与编译原理密切相关,只有一个测试点段错误
团体程序设计天梯赛代码.体现代码技巧,比赛技巧. https://github.com/congmingyige/cccc_code
- 团体程序设计天梯赛(CCCC) L3015 球队“食物链” 状态压缩
团体程序设计天梯赛代码.体现代码技巧,比赛技巧. https://github.com/congmingyige/cccc_code #include <cstdio> #include ...
- 团体程序设计天梯赛(CCCC) L3014 周游世界 BFS证明
团体程序设计天梯赛代码.体现代码技巧,比赛技巧. https://github.com/congmingyige/cccc_code
- 团体程序设计天梯赛(CCCC) L3013 非常弹的球 不同思路
团体程序设计天梯赛代码.体现代码技巧,比赛技巧. https://github.com/congmingyige/cccc_code
- 团体程序设计天梯赛(CCCC) L3012 水果忍者 上凸或下凹的证明
团体程序设计天梯赛代码.体现代码技巧,比赛技巧. https://github.com/congmingyige/cccc_code #include <cstdio> #include ...
- 树状数组+二分答案查询第k大的数 (团体程序设计天梯赛 L3-002. 堆栈)
前提是数的范围较小 1 数据范围:O(n) 2 查第k大的数i:log(n)(树状数组查询小于等于i的数目)*log(n)(二分找到i) 3 添加:log(n) (树状数组) 4 删除:log(n) ...
- PTA L2-001 紧急救援-最短路(Dijkstra)多条最短路找最优解并输出路径 团体程序设计天梯赛-练习集
L2-001 紧急救援 (25 分) 作为一个城市的应急救援队伍的负责人,你有一张特殊的全国地图.在地图上显示有多个分散的城市和一些连接城市的快速道路.每个城市的救援队数量和每一条连接两个城市的快 ...
随机推荐
- ipmitool命令详解
基础命令学习目录首页 原文链接:https://www.cnblogs.com/EricDing/p/8995263.html [root@localhost ~]# yum install -y i ...
- Python列表解析
列表解析 根据已有列表,高效创建新列表的方式. 列表解析是Python迭代机制的一种应用,它常用于实现创建新的列表,因此用在[]中. 语法: [expression for iter_val in i ...
- django_models_Meta字段详解
Django模型类的Meta是一个内部类,它用于定义一些Django模型类的行为特性.而可用的选项大致包含以下几类 abstract 这个属性是定义当前的模型是不是一个抽象类.所谓抽象类是不会对应数据 ...
- 【Alpha】Task分配与计划发布
团队项目链接 以上大概是我们的任务分配,根据目前的预计时间来看,到α版本项目稳定下来至少需要440小时的开发时间才能完成. 项目最大的问题点和难点在于其数据量非常之大,计算模块要求非常之多,想象一下 ...
- 20172308 实验一《Java开发环境的熟悉》实验报告
20172308 2017-2018-2 <程序设计与数据结构>实验1报告 课程:<程序设计与数据结构> 班级: 1723 姓名: 周亚杰 学号:20172308 实验教师:王 ...
- Hibernate的使用技巧②
1.Hibernate统计记录的数量 Criteria c = session.createCriteria(User.class.getName()); c.setProjection ...
- 软工1816 · Beta冲刺(5/7)
团队信息 队名:爸爸饿了 组长博客:here 作业博客:here 组员情况 组员1(组长):王彬 过去两天完成了哪些任务 推进后端完成安卓端接口的开发 在测试中发现返回地图接口存在错误(待修复) 推进 ...
- 软工实践-Beta 冲刺 (1/7)
队名:起床一起肝活队 组长博客:博客链接 作业博客:班级博客本次作业的链接 组员情况 组员1(队长):白晨曦 过去两天完成了哪些任务 描述: 1.界面的修改与完善 展示GitHub当日代码/文档签入记 ...
- b6
吴晓晖(组长) 过去两天完成了哪些任务 对手写输入进行了重构,然后重新捋了一下bayes的思路 展示GitHub当日代码/文档签入记录 接下来的计划 推荐算法 还剩下哪些任务 组员:刘帅珍 过去两天完 ...
- Putty+Xming实现在Windows客户端显示Linux服务器端的图形化程序
走了不少弯路啊~~~言归正传,最近研发和我说要在一台EC2的机器上运行一个带GUI的程序,当时我就纳闷了:EC2的机器应该没有桌面套件的吧,那该怎么运行GUI的程序呢?百思不得其解时收到一封邮件,大致 ...