UVa837 - Light and Transparencies(排序)

简介: UVa837 - Light and Transparencies(排序)
#include <cstdio>#include <vector>#include <algorithm>#include <cmath>usingnamespacestd;
constdoubleEPS=1e-6;
constintINF=0x3f3f3f3f;
structLine{
doublex1, x2, trans;
booloperator< (constLine&other) const    {
if (fabs(x1-other.x1) >EPS) returnx1<other.x1;
returnx2<other.x2;
    }
};
vector<double>vPoint;
vector<Line>vLine;
voidinput();
voidsolve();
intmain()
{
#ifndef ONLINE_JUDGEfreopen("e:\\uva_in.txt", "r", stdin);
#endifintt;
scanf("%d", &t);
while (t--) {
input();
solve();
if (t) printf("\n");
    }
return0;
}
voidinput()
{
intn;
Lineline;
scanf("%d", &n);
vPoint.clear();
vLine.clear();
for (inti=0; i<n; i++) {
scanf("%lf%*lf%lf%*lf%lf", &(line.x1), &(line.x2), &(line.trans));
//printf("%lf %lf %lf\n", line.x1, line.x2, line.trans);if (line.x1>line.x2) {
swap(line.x1, line.x2);
        }
vPoint.push_back(line.x1);;
vPoint.push_back(line.x2);
vLine.push_back(line);
    }
sort(vPoint.begin(), vPoint.end());
sort(vLine.begin(), vLine.end());
/*printf("size=%d\n", vLine.size());for (size_t i = 0; i < vLine.size(); i++) {printf("%.3lf %.3lf\n", vLine[i].x1, vLine[i].x2);}*/}
voidsolve()
{
vector<Line>ans;
Lineline;
line.x1=-INF, line.x2=vPoint.front(), line.trans=1.0;
ans.push_back(line);
for (inti=0; i<vPoint.size() -1; i++) {
doubletrans=1.0;
for (intj=0; j<vLine.size(); j++) {
if (vPoint[i] >=vLine[j].x1&&vPoint[i] <=vLine[j].x2&&vPoint[i+1] >=vLine[j].x1&&vPoint[i+1] <=vLine[j].x2) {
trans*=vLine[j].trans;
            }
        }
line.x1=vPoint[i], line.x2=vPoint[i+1], line.trans=trans;
ans.push_back(line);
    }
line.x1=vPoint.back(), line.x2=INF, line.trans=1.0;
ans.push_back(line);
printf("%d\n", ans.size());
printf("-inf %.3lf %.3lf\n", ans[0].x2, 1.0);
for (inti=1; i<ans.size() -1; i++) {
printf("%.3lf %.3lf %.3lf\n", ans[i].x1, ans[i].x2, ans[i].trans);
    }
printf("%.3lf +inf %.3lf\n", ans[ans.size() -1].x1, 1.0);
}
目录
相关文章
|
5天前
|
数据采集 人工智能 自然语言处理
3分钟采集134篇AI文章!深度解析如何通过云无影AgentBay实现25倍并发 + LlamaIndex智能推荐
结合阿里云无影 AgentBay 云端并发采集与 LlamaIndex 智能分析,3分钟高效抓取134篇 AI Agent 文章,实现 AI 推荐、智能问答与知识沉淀,打造从数据获取到价值提炼的完整闭环。
392 93
|
6天前
|
域名解析 人工智能
【实操攻略】手把手教学,免费领取.CN域名
即日起至2025年12月31日,购买万小智AI建站或云·企业官网,每单可免费领1个.CN域名首年!跟我了解领取攻略吧~
|
6天前
|
SQL 人工智能 自然语言处理
Geo优化SOP标准化:于磊老师的“人性化Geo”体系如何助力企业获客提效46%
随着生成式AI的普及,Geo优化(Generative Engine Optimization)已成为企业获客的新战场。然而,缺乏标准化流程(Geo优化sop)导致优化效果参差不齐。本文将深入探讨Geo专家于磊老师提出的“人性化Geo”优化体系,并展示Geo优化sop标准化如何帮助企业实现获客效率提升46%的惊人效果,为企业在AI时代构建稳定的流量护城河。
395 156
Geo优化SOP标准化:于磊老师的“人性化Geo”体系如何助力企业获客提效46%
|
5天前
|
数据采集 缓存 数据可视化
Android 无侵入式数据采集:从手动埋点到字节码插桩的演进之路
本文深入探讨Android无侵入式埋点技术,通过AOP与字节码插桩(如ASM)实现数据采集自动化,彻底解耦业务代码与埋点逻辑。涵盖页面浏览、点击事件自动追踪及注解驱动的半自动化方案,提升数据质量与研发效率,助力团队迈向高效、稳定的智能化埋点体系。(238字)
282 158
|
13天前
|
机器人 API 调度
基于 DMS Dify+Notebook+Airflow 实现 Agent 的一站式开发
本文提出“DMS Dify + Notebook + Airflow”三位一体架构,解决 Dify 在代码执行与定时调度上的局限。通过 Notebook 扩展 Python 环境,Airflow实现任务调度,构建可扩展、可运维的企业级智能 Agent 系统,提升大模型应用的工程化能力。