2011 北京现场赛 B Hou Yi's secret

2024-03-18 13:58
文章标签 北京 2011 secret 现场 yi hou

本文主要是介绍2011 北京现场赛 B Hou Yi's secret,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

//题意:输入n个点,求最多的相似三角形个数

//数据很小,直接暴力,但是有两个trick,点的共线和重合问题 。

#include<iostream>
#include<cstdio>
#include<cmath>
#include<algorithm>
#include<cstring>
using namespace std;
const double EP=1e-8;
struct Point{double x, y;}p[20];
struct T{Point p[3];double ang[3];}t[1000];
int f[300][300];
double cross(Point sp, Point ep, Point op){
    return (sp.x-op.x)*(ep.x-op.x)+(sp.y-op.y)*(ep.y-op.y);
}
double dist(Point p1, Point p2){
    return sqrt((p1.x-p2.x)*(p1.x-p2.x)+(p1.y-p2.y)*(p1.y-p2.y));
}
double x_mult(Point sp, Point ep, Point op){
 return (sp.x-op.x)*(ep.y-op.y)-(ep.x-op.x)*(sp.y-op.y);
}
T make(Point p1, Point p2, Point p3){
    T tt;
    tt.p[0]=p1;tt.p[1]=p2;tt.p[2]=p3;
    tt.ang[0]=acos(cross(p1, p2, p3)/dist(p1, p3)/dist(p2, p3));
    tt.ang[1]=acos(cross(p1, p3, p2)/dist(p1, p2)/dist(p3, p2));
    tt.ang[2]=acos(cross(p3, p2, p1)/dist(p1, p3)/dist(p2, p1));
    return tt;
}

bool comp(int i, int j){

    sort(t[i]. ang, t[i].ang+3);
    if((fabs(t[i].ang[0]-t[j].ang[0])<EP)&&
        (fabs(t[i].ang[1]-t[j].ang[1])<EP)&&
        (fabs(t[i].ang[2]-t[j].ang[2])<EP))
     return true;
    while(next_permutation(t[i].ang, t[i].ang+3)){
    if((fabs(t[i].ang[2]-t[j].ang[0])<EP)&&
       (fabs(t[i].ang[1]-t[j].ang[1])<EP)&&
       (fabs(t[i].ang[0]-t[j].ang[2])<EP))
        return true;
          }
    return false;
}
int main(){
 //freopen("1.txt", "r", stdin);
    int n, i, j, k, sum, s, ans, t1, t2, tsum;
    while(scanf("%d", &tsum)&&tsum){
  n=0;memset(f, 0, sizeof(f));
        for(i=0; i<tsum; i++){
            scanf("%d%d", &t1, &t2);
   if(f[t1+100][t2+100])continue;
   f[t1+100][t2+100]=1;
   p[n].x=t1*1.0;p[n].y=t2*1.0;
   n++;
        }
        sum=0;
        for(i=0; i<n-2; i++)
        for(j=i+1; j<n-1; j++)
        for(k=j+1; k<n; k++){
   if(fabs(x_mult(p[i], p[j], p[k]))>EP)
            t[sum++]=make(p[i], p[j], p[k]);
        }
        ans=0;
        for(i=0; i<sum; i++){
            s=0;
        for(j=0; j<sum; j++){
            if(comp(i, j))
            s++;
        }
        if(ans<s)ans=s;
        }
        printf("%d\n", ans);
    }
    return 0;
}

这篇关于2011 北京现场赛 B Hou Yi's secret的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/822557

相关文章

90、k8s之secret+configMap

一、secret配置管理 配置管理: 加密配置:保存密码,token,其他敏感信息的k8s资源 应用配置:我们需要定制化的给应用进行配置,我们需要把定制好的配置文件同步到pod当中容器 1.1、加密配置: secret: [root@master01 ~]# kubectl get secrets ##查看加密配置[root@master01 ~]# kubectl get se

2023 CCPC(秦皇岛)现场(第二届环球杯.第 2 阶段:秦皇岛)部分题解

所有题目链接:Dashboard - The 2023 CCPC (Qinhuangdao) Onsite (The 2nd Universal Cup. Stage 9: Qinhuangdao) - Codeforces 中文题面: contest-37054-zh.pdf (codeforces.com) G. Path 链接: Problem - G - Codeforces

2014年ACM/ICPC亚洲区现场赛广州赛区总结

本来不想提这件事的,后来学姐找我谈心时提到这件事,我突然意识到在这件事情上我错了一次,明明答应的去参加这场比赛,最后临时决定不去......其实中间有很多很多原因 1:我和tyh,sxk临时不去主要是广州太远,我们身上money不够,呵呵。。。别笑我们,你以为我们是高富帅啊,去一趟广州消费要2个月的生活费,奖学金又没发,你让我找我妈要她辛辛苦苦挣来的工资吗?!从哈尔滨到广州单来回的火车票每个人就

【python】—— Python爬虫实战:爬取珠海市2011-2023年天气数据并保存为CSV文件

目录 目标 准备工作 爬取数据的开始时间和结束时间 爬取数据并解析 将数据转换为DataFrame并保存为CSV文件         本文将介绍如何使用Python编写一个简单的爬虫程序,以爬取珠海市2011年至2023年的天气数据,并将这些数据保存为CSV文件。我们将涉及到以下知识点: 使用requests库发送HTTP请求使用lxml库解析HTML文档使用dateti

北京精诚博爱医院简介

北京精诚博爱医院位于北京市朝阳区崔各庄乡南皋路188号,地处东北五环外,毗邻首都机场高速,与北京798艺术区和草场地艺术区隔窗相望,交通便捷。是一所以医疗、康复、预防保健为一体综合性医保定点医院。 医院为国家呼吸临床中心医联体危重症协作组成员单位,京津冀急诊急救联盟单位,北京急救中心120京顺急救工作站,北京市红十字会救援服务中心999东部大站,国家名医名方重点研究室颈椎疾病研究中心,国家远

北京君正低功耗MCU芯片应用在柯氏音法电子血压计

汉王科技,作为一家在中关村有着30年品牌历史的人工智能企业,始终致力于利用先进技术提升人们的生活品质。近日,继血压计KSY-FF660上市掀起血压测量新标准后,汉王科技再次突破行业创新,推出一体式柯氏音法电子血压计FY730,为人们的健康管理带来了更为精准便携的全新体验。   一体式设计精准便携 带着健康出发   汉王柯氏音法电子血压计FY7

元25省份上调企退人员养老金 北京每月3050元最高(转载)

http://www.docin.com/p-828383150.html?7z09RhqmS4 http://www.docin.com/p-828383145.html?ng3uQ3HeA6 http://www.docin.com/p-828383132.html?DMk4OJHdh http://www.docin.com/p-828383124.html?70aeNA http:

内推|京东|后端开发|运维|算法...|北京 更多岗位扫内推码了解,直接投递,跟踪进度

热招岗位 更多岗位欢迎扫描末尾二维码,小程序直接提交简历等面试。实时帮你查询面试进程。 安全运营中心研发工程师 岗位要求 1、本科及以上学历,3年以上的安全相关工作经验; 2、熟悉c/c++、go编程语言之一、熟悉linux网络编程和系统编程 3、主动自驱、责任心强,沟通和团队合作意识良好 4、熟悉日常安全运营,有相关产品经验优先 岗位职责: 1、负责安全运营中心SOC和SOAR的研发和保障

北京做Java开发月薪两万--学习方法,高薪岗位技能需求

有人回答说这只能是大企业或者互联网企业工程师才能拿到。也许是的,小公司或者非互联网企业拿两万的不太可能是码农了,应该已经转管理。还有区域问题,这个不在我的考虑范围内,因为除了北上广深杭,其他地方也很难达到。 还有人提到这个水平不止2w,其实工资是跟面试表现有关的,也跟其他综合水平有关,比如你是985,top10,或者研究生学历,也或者懂点node,懂点大数据等等,或者表达能力强,击中面试官痛

央视曝光“硫超标”枸杞,记者直击加工现场:被熏到泪流不止

枸杞,这一自古以来便被誉为“药食同源”的珍贵食材,不仅承载着中华民族深厚的养生智慧,也广泛融入现代人的日常饮食与保健之中。 从食品、饮料到保健品,枸杞的身影无处不在,其独特的营养价值与药用价值深受消费者青睐。 然而,在这看似颗粒饱满、鲜艳红亮的枸杞,背后却隐藏着不为人知的秘密,有着巨大的食品安全隐患,威胁着消费者的健康,更对中医这一中华文化的瑰宝造成了不可估量的损害。 青海省海西