CCF模拟题 202309-1 坐标变换(其一)

2024-01-08 15:44

本文主要是介绍CCF模拟题 202309-1 坐标变换(其一),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

问题描述
试题编号: 202309-1
试题名称: 坐标变换(其一)
时间限制: 1.0s
内存限制: 512.0MB

问题描述:
对于平面直角坐标系上的坐标(x,y),小P定义了一个包含n个操作序列T = (t1,t2,…,tn)。
其中每个操作ti(1<=i<=n)包含两个参数dxi,dyi,表示将坐标平移至(x+dxi,y+dyi)处。
现给定m个初始坐标,试计算对每个坐标(xj,yj)(1<=j<=m)依次进行T中n个操作后的最终坐标。

输入格式:
从标准输入读入数据。
输入共 n+m+1 行。
输入的第一行包含空格分隔的两个正整数 n 和 m,分别表示操作和初始坐标个数。
接下来 n 行依次输入 n 个操作,其中第 i(1<=i<=n)行包含空格分隔的两个整数 dxi、dyi。
接下来 m 行依次输入 m 个坐标,其中第 j(1<=j<=m)行包含空格分隔的两个整数 xj、yj。

输出格式:
输出到标准输出中。
输出共 m 行,其中第 j(1<=j<=m)行包含空格分隔的两个整数,表示初始坐标 (xi,yi) 经过 n 个操作后的位置。

样例输入

3 2
10 10
0 0
10 -20
1 -1
0 0

样例输出

21 -11
20 -10

在这里插入图片描述

Java代码:

// CCF_20231209_1
import java.util.*;public class Main{public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int n = scanner.nextInt();int m = scanner.nextInt();// 读取操作序列,二位数组存储操作序列int[][] operations = new int[n][2];for (int i = 0; i < n; i++) {operations[i][0] = scanner.nextInt();operations[i][1] = scanner.nextInt();}// 读取初始坐标int[][] coordinates = new int[m][2];for (int i = 0; i < m; i++) {coordinates[i][0] = scanner.nextInt();coordinates[i][1] = scanner.nextInt();}// 执行操作序列for (int i = 0; i < m; i++) {int x = coordinates[i][0];int y = coordinates[i][1];for (int j = 0; j < n; j++) {x += operations[j][0];y += operations[j][1];}System.out.println(x + " " + y);}scanner.close();}
}

C语言代码:

#include <stdio.h>int main() {int n, m;scanf("%d %d", &n, &m);// 读取操作序列int operations[n][2];for (int i = 0; i < n; i++) {scanf("%d %d", &operations[i][0], &operations[i][1]);}// 读取初始坐标int coordinates[m][2];for (int i = 0; i < m; i++) {scanf("%d %d", &coordinates[i][0], &coordinates[i][1]);}// 执行操作序列for (int i = 0; i < m; i++) {int x = coordinates[i][0];int y = coordinates[i][1];for (int j = 0; j < n; j++) {x += operations[j][0];y += operations[j][1];}printf("%d %d\n", x, y);}return 0;
}

这篇关于CCF模拟题 202309-1 坐标变换(其一)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

机试算法模拟题 服务中心选址

题目描述 一个快递公司希望在一条街道建立新的服务中心。公司统计了该街道中所有区域在地图上的位置,并希望能够以此为依据为新的服务中心选址:使服务中心到所有区域的距离的总和最小。 给你一个数组positions,其中positions[i] = [left, right] 表示第 i 个区域在街道上的位置,其中left代表区域的左侧的起点,right代表区域的右侧终点,假设服务中心的位置为loca

Verybot之OpenCV应用二:霍夫变换查找圆

其实我是想通过这个程序来测试一下,OpenCV在Verybot上跑得怎么样,霍夫变换的原理就不多说了,下面是程序: #include "cv.h"#include "highgui.h"#include "stdio.h"int main(int argc, char** argv){cvNamedWindow("vedio",0);CvCapture* capture;i

SW - 引入第三方dwg图纸后,修改坐标原点

文章目录 SW - 引入第三方dwg图纸后,修改坐标原点概述笔记设置图纸新原点END SW - 引入第三方dwg图纸后,修改坐标原点 概述 在solidworks中引入第三方的dwg格式图纸后,坐标原点大概率都不合适。 全图自动缩放后,引入的图纸离默认的原点位置差很多。 需要自己重新设置原点位置,才能自动缩放后,在工作区中间显示引入的图纸。 笔记 将dwg图纸拖到SW中

CCF推荐C类会议和期刊总结(计算机网络领域)

CCF推荐C类会议和期刊总结(计算机网络领域) 在计算机网络领域,中国计算机学会(CCF)推荐的C类会议和期刊为研究者提供了广泛的学术交流平台。以下是对所有C类会议和期刊的总结,包括全称、出版社、dblp文献网址以及所属领域。 目录 CCF推荐C类会议和期刊总结(计算机网络领域) C类期刊 1. Ad Hoc Networks 2. CC 3. TNSM 4. IET Com

三维激光扫描点云配准外业棋盘的布设与棋盘坐标测量

文章目录 一、棋盘标定板准备二、棋盘标定板布设三、棋盘标定板坐标测量 一、棋盘标定板准备 三维激光扫描棋盘是用来校准和校正激光扫描仪的重要工具,主要用于提高扫描精度。棋盘标定板通常具有以下特点: 高对比度图案:通常是黑白相间的棋盘格,便于识别。已知尺寸:每个格子的尺寸是已知的,可以用于计算比例和调整。平面标定:帮助校准相机和激光扫描仪之间的位置关系。 使用方法 扫描棋盘:

C/C++两点坐标求距离以及C++保留两位小数输出,秒了

目录 1. 前言 2. 正文 2.1 问题 2.2 解决办法 2.2.1 思路 2.2.2 代码实现 3. 备注 1. 前言 依旧是带来一个练手的题目,目的就一个,方法千千万,通向终点的方式有很多种,没有谁与谁,我们都是为了成为更好的自己。 2. 正文 2.1 问题 题目描述: 输入两点坐标(X1,Y1),(X2,Y2),计算并输出两点间的距离。 输入格式:

【数字信号处理】一文讲清FFT(快速傅里叶变换)

目录 快速傅里叶变换(Fast Fourier Transform,FFT)FFT的背景快速傅里叶变换(Fast Fourier Transform,FFT)DFT的数学表达实际计算重要性和应用频谱泄露、频谱混叠奈奎斯特采样定理参考链接 快速傅里叶变换(Fast Fourier Transform,FFT) FFT的背景 1、为什么要时域→频域频率?50Hz+频率120Hz

1.39TB高清卫星影像更新(WGS84坐标投影)

最近对WGS84版的高清卫星影像数据进行了一次更新,并基于更新区域生成了相应的接图表。 1.39TB高清卫星影像更新 本次数据更新了1576个离线包,共1.39TB大小,并全部生成了更新接图表。 更新接图表范围 更新接图表由每一个离线包文件的范围构成,放大地图可以查看接图表的编号。    接图表编号 我们打开瓦片编号并放到到第12级,可以发现接图表的编号与瓦片编号完全一

halcon 的图像坐标转到实际的机械坐标的标定

所谓手眼系统,就是人眼睛看到一个东西的时候要让手去抓取,就需要大脑知道眼睛和手的坐标关系。如果把大脑比作B,把眼睛比作A,把手比作C,如果A和B的关系知道,B和C的关系知道,那么C和A的关系就知道了,也就是手和眼的坐标关系也就知道了。 相机知道的是像素坐标,机械手是空间坐标系,所以手眼标定就是得到像素坐标系和空间机械手坐标系的坐标转化关系。 在实际控制中,相机检测到目标在图像中的像

傅里叶变换家族

禹晶、肖创柏、廖庆敏《数字图像处理(面向新工科的电工电子信息基础课程系列教材)》 禹晶、肖创柏、廖庆敏《数字图像处理》资源二维码