ppt模板下载的网站各种网站程序的优势

张小明 2026/3/2 23:09:31
ppt模板下载的网站,各种网站程序的优势,建湖做网站价格,从美洲开始做皇帝免费阅读网站题目描述某设备需要记录每分钟检测到的指标值。为了节约存储空间#xff0c;将连续相同指标值的记录合并。压缩之前#xff1a; 202411231000,11 202411231001,11 202411231002,12 202411231003,12 202411231004,10 202411231005,17 202411231006,17 202411231007,17压缩之后…题目描述某设备需要记录每分钟检测到的指标值。为了节约存储空间将连续相同指标值的记录合并。压缩之前 202411231000,11 202411231001,11 202411231002,12 202411231003,12 202411231004,10 202411231005,17 202411231006,17 202411231007,17压缩之后 202411231000,202411231001,11 202411231002,202411231003,12 202411231004,202411231004,10 202411231005,202411231007,17查询时根据输入的时间范围进行查询需要返回回时间范围内记录的每分钟的指标值如果某个时间点没有记录值则此条记录忽略不返回。输入描述第一行为查询的时间范围格式是startTime,endTime。查询的时间范围为闭区间即大于等于startTime且小于等于endTime startTime endTime且他们跨度的分钟数小于100第二行为压缩日志记录的行数100 N 0第三行及以后为压缩日志内容。每一行的格式为startTime,endTime,kpi其中 startTimeendTime10^5kpi0记录已按升序进行排序。不保证两行记录之间是紧密连接startTime和endTime的时间跨度可能很大。 如上一行的数据显示范围是202411231540, 202411231542下一行的数据显示可以是 202411231544, 202411231547 中间202411231543的数据可能由于其他原因缺失。输出描述输出描述 查询到的日志清单如 202411231010,11 202411231011,10 202411231012,10 202411231013,16输出结果按数据时间升序排序。补充说明 输入的数据可能超出当前已存储的数据范围此时只输出查询到的数据。 如果从头到尾都没有查询到记录则输出-1。用例1输入202411231010,2024112310134202411231000,202411231010,11202411231011,202411231012,10202411231013,202411231020,16202411231021,202411231028,17输出202411231010,11202411231011,10202411231012,10202411231013,16说明202411231010时间的指标值在202411231000,202411231010范围内值是11 202411231011,202411231012时间的指标值在202411231011,202411231012范围内值是10 202411231013时间的指标值在202411231013,202411231020范围内值是16问题分析题目要求处理压缩后的时间序列数据并根据查询范围恢复每分钟的原始数据。压缩数据格式为startTime,endTime,value表示从startTime到endTime闭区间每分钟的指标值均为value。查询时需要将压缩数据解压为每分钟的记录并筛选出落在查询时间范围内的记录。解决思路解析查询范围获取查询的起始时间和结束时间。处理压缩数据遍历每条压缩记录检查其时间范围是否与查询范围有交集。生成每分钟记录对于有交集的压缩记录生成每分钟的记录并筛选出落在查询范围内的记录。合并和排序结果将所有符合条件的记录按时间升序排序后输出。代码实现C#include iostream #include vector #include algorithm using namespace std; struct Record { long long time; int value; }; bool compareRecords(const Record a, const Record b) { return a.time b.time; } int main() { long long startQuery, endQuery; char comma; cin startQuery comma endQuery; int n; cin n; vectorRecord records; for (int i 0; i n; i) { long long start, end; int value; cin start comma end comma value; long long overlapStart max(start, startQuery); long long overlapEnd min(end, endQuery); if (overlapStart overlapEnd) { for (long long t overlapStart; t overlapEnd; t) { records.push_back({t, value}); } } } if (records.empty()) { cout -1 endl; } else { sort(records.begin(), records.end(), compareRecords); for (const auto record : records) { cout record.time , record.value endl; } } return 0; }C#include stdio.h #include stdlib.h typedef struct { long long time; int value; } Record; int compareRecords(const void *a, const void *b) { Record *ra (Record *)a; Record *rb (Record *)b; return (ra-time rb-time) - (ra-time rb-time); } int main() { long long startQuery, endQuery; scanf(%lld,%lld, startQuery, endQuery); int n; scanf(%d, n); Record *records malloc(100 * sizeof(Record)); int count 0; for (int i 0; i n; i) { long long start, end; int value; scanf(%lld,%lld,%d, start, end, value); long long overlapStart start startQuery ? start : startQuery; long long overlapEnd end endQuery ? end : endQuery; if (overlapStart overlapEnd) { for (long long t overlapStart; t overlapEnd; t) { records[count].time t; records[count].value value; count; } } } if (count 0) { printf(-1\n); } else { qsort(records, count, sizeof(Record), compareRecords); for (int i 0; i count; i) { printf(%lld,%d\n, records[i].time, records[i].value); } } free(records); return 0; }Pythonstart_query, end_query map(int, input().split(,)) n int(input()) records [] for _ in range(n): start, end, value map(int, input().split(,)) overlap_start max(start, start_query) overlap_end min(end, end_query) if overlap_start overlap_end: for t in range(overlap_start, overlap_end 1): records.append((t, value)) if not records: print(-1) else: records.sort() for t, value in records: print(f{t},{value})Javaimport java.util.*; public class Main { public static void main(String[] args) { Scanner scanner new Scanner(System.in); String[] queryRange scanner.nextLine().split(,); long startQuery Long.parseLong(queryRange[0]); long endQuery Long.parseLong(queryRange[1]); int n Integer.parseInt(scanner.nextLine()); ListRecord records new ArrayList(); for (int i 0; i n; i) { String[] parts scanner.nextLine().split(,); long start Long.parseLong(parts[0]); long end Long.parseLong(parts[1]); int value Integer.parseInt(parts[2]); long overlapStart Math.max(start, startQuery); long overlapEnd Math.min(end, endQuery); if (overlapStart overlapEnd) { for (long t overlapStart; t overlapEnd; t) { records.add(new Record(t, value)); } } } if (records.isEmpty()) { System.out.println(-1); } else { records.sort(Comparator.comparingLong(Record::getTime)); for (Record record : records) { System.out.println(record.getTime() , record.getValue()); } } } static class Record { private long time; private int value; public Record(long time, int value) { this.time time; this.value value; } public long getTime() { return time; } public int getValue() { return value; } } }JavaScriptconst readline require(readline); const rl readline.createInterface({ input: process.stdin, output: process.stdout }); let lines []; rl.on(line, (line) { lines.push(line); }).on(close, () { const [startQuery, endQuery] lines[0].split(,).map(Number); const n parseInt(lines[1]); let records []; for (let i 2; i 2 n; i) { const [start, end, value] lines[i].split(,).map(Number); const overlapStart Math.max(start, startQuery); const overlapEnd Math.min(end, endQuery); if (overlapStart overlapEnd) { for (let t overlapStart; t overlapEnd; t) { records.push({ time: t, value: value }); } } } if (records.length 0) { console.log(-1); } else { records.sort((a, b) a.time - b.time); for (const record of records) { console.log(${record.time},${record.value}); } } });代码解释输入处理读取查询范围和压缩数据行数然后逐行读取压缩数据。时间范围交集计算对于每条压缩数据计算其与查询范围的重叠部分。记录生成在重叠时间范围内生成每分钟的记录并存储到列表中。结果输出如果列表为空输出-1否则对记录按时间排序后逐条输出。每种语言的实现逻辑相同只是语法和数据结构略有差异。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

青岛慧思网站建设网站优化 福州

Docker镜像源配置技巧:让TensorFlow拉取速度快3倍以上 在人工智能项目开发中,你有没有经历过这样的场景?刚搭好环境,准备 docker pull tensorflow/tensorflow:latest-gpu,结果下载条卡在10%一动不动,一杯咖…

张小明 2026/1/10 19:10:05 网站建设

菜鸟网站建设承德建设企业网站

如何实现电商运营的智能化管理机制 关键词:电商运营、智能化管理、机器学习、数据驱动、自动化决策、个性化推荐、供应链优化 摘要:本文深入探讨了电商运营智能化管理的实现机制,从基础概念到核心技术,再到实际应用场景。文章首先介绍了电商运营智能化的背景和必要性,然后…

张小明 2026/1/10 14:44:46 网站建设

网站整体迁移该怎么做建设厅网站的投诉可以哪里查

Android视频录制框架深度解析:基于FFmpeg的开源解决方案实战指南 【免费下载链接】WeiXinRecordedDemo 仿微信视频拍摄UI, 基于ffmpeg的视频录制编辑 项目地址: https://gitcode.com/gh_mirrors/we/WeiXinRecordedDemo 技术背景与移动端视频开发痛点 在移动…

张小明 2025/12/29 16:53:51 网站建设

东莞市做阀门的网站wordpress自动填写表格

LangFlow能否用于电商产品描述批量生成?运营提效案例 在电商平台,每天都有成千上万的新品上架。每一件商品都需要一段精心打磨的描述——既要突出卖点,又要符合品牌调性,还得兼顾SEO关键词布局。传统做法是靠文案团队一条条撰写&a…

张小明 2025/12/24 22:53:12 网站建设

中小企业网站规划方案长沙企业网站建立

利用for循环和continue、break等关键字编写一个发放工资的程序。 要求:给1~20名员工发放工资,依次发放。随机生成员工的绩效分,绩效范围是1~10,绩效低于5不发工资,大于等于5发放1万元。公司账户余额10万元&…

张小明 2025/12/23 17:15:24 网站建设