Day8

前几天写了牛客周赛和集美大学ACM赛的题,耽误了几天,这几天会陆续发他们的题解,前两天的题就不补了,。

题目描述

涛涛最近要负责图书馆的管理工作,需要记录下每天读者的到访情况。

每位读者有一个唯一编号,每条记录用读者的编号来表示。

给出读者的来访记录,请问每一条记录中的读者是第几次出现。

输入格式

输入的第一行包含一个整数$ n$,表示涛涛的记录条数。

第二行包含$ n$ 个整数,依次表示涛涛的记录中每位读者的编号。

输出格式

输出一行,包含 \(n\) 个整数,由空格分隔,依次表示每条记录中的读者编号是第几次出现。

数据范围

\(1≤n≤1000\),读者的编号为不超过$ n$ 的正整数。

输入样例:

5
1 2 1 1 3

输出样例:

1 1 2 3 1

题目分析

语法题

每次出现次数++即可

C++代码

#include <bits/stdc++.h>

using namespace std;

int n;
map<int , int> p; int main()
{
cin >> n;
while (n -- )
{
int x;
cin >> x;
p[x] ++;
cout << p[x] << ' ';
}
return 0;
}

题目描述

在图像编码的算法中,需要将一个给定的方形矩阵进行 \(Z\) 字形扫描(Zigzag Scan)。

给定一个 \(n×n\) 的矩阵,\(Z\) 字形扫描的过程如下图所示:

对于下面的 \(4×4\) 的矩阵,

1 5 3 9
3 7 5 6
9 4 6 4
7 3 1 3

对其进行 \(Z\) 字形扫描后得到长度为 \(16\) 的序列:1 5 3 9 7 3 9 5 4 7 3 6 6 4 1 3

请实现一个 \(Z\) 字形扫描的程序,给定一个$ n×n$ 的矩阵,输出对这个矩阵进行$ Z$字形扫描的结果。

输入格式

输入的第一行包含一个整数 \(n\),表示矩阵的大小。

输入的第二行到第 \(n+1\) 行每行包含$ n$ 个正整数,由空格分隔,表示给定的矩阵。

输出格式

输出一行,包含 \(n×n\) 个整数,由空格分隔,表示输入的矩阵经过 \(Z\) 字形扫描后的结果。

数据范围

\(1≤n≤500\),矩阵元素为不超过 \(1000\) 的正整数。

输入样例:

4
1 5 3 9
3 7 5 6
9 4 6 4
7 3 1 3

输出样例:

1 5 3 9 7 3 9 5 4 7 3 6 6 4 1 3

题目解析

曼哈顿距离 + 模拟

观察斜着打印的坐标的特点,可以发现直线方程都是\(x + y = k\)的形式,至于往下平移,\(k\)从小到大枚举即可最大\(n^2\)

那么打印的顺序观察\(k\)的奇偶性即可。

要注意的是,这里不是所有坐标都有值,要判断要打印的坐标是否合法

时间复杂度\(O(n^3)\)

C++代码

#include <bits/stdc++.h>

using namespace std;

const int N = 510;

int a[N][N];

int n;

int main()
{
cin >> n;
for(int i = 1 ; i <= n ; i ++)
for(int j = 1 ; j <= n ; j ++)
cin >> a[i][j]; for(int i = 2 ; i <= 2 * n ; i ++)
{
if(i % 2 == 0)
for(int y = 1 ; y <= n ; y ++)
{
if(i - y <= 0 || i - y > n) continue;
// cout << y << ' ' << i - y << '\n';
cout << a[i - y][y] << ' ';
} else
for(int x = 1 ; x <= n; x ++)
{
if(i - x <= 0 || i - x > n) continue;
// cout << x << ' ' << i - x << '\n';
cout << a[x][i - x] << ' ';
} }
return 0;
}

Day8 备战CCF-CSP练习的更多相关文章

  1. CCF CSP 认证

    参加第八次CCF CSP认证记录 代码还不知道对不对,过两天出成绩. 成绩出来了,310分. 100+100+100+10+0: 考试13:27开始,17:30结束,提交第4题后不再答题,只是检查前四 ...

  2. CCF CSP 201609-2 火车购票

    题目链接:http://118.190.20.162/view.page?gpid=T46 问题描述 请实现一个铁路购票系统的简单座位分配算法,来处理一节车厢的座位分配. 假设一节车厢有20排.每一排 ...

  3. CCF CSP 201703-3 Markdown

    CCF计算机职业资格认证考试题解系列文章为meelo原创,请务必以链接形式注明本文地址 CCF CSP 201703-3 Markdown 问题描述 Markdown 是一种很流行的轻量级标记语言(l ...

  4. CCF CSP 201703

    CCF CSP 2017·03 做了一段时间的CCF CSP试题,个人感觉是这样分布的 A.B题基本纯暴力可满分 B题留心数据范围 C题是个大模拟,留心即可 D题更倾向于图论?(个人做到的D题基本都是 ...

  5. CCF CSP 201312-3 最大的矩形

    CCF计算机职业资格认证考试题解系列文章为meelo原创,请务必以链接形式注明本文地址 CCF CSP 201312-3 最大的矩形 问题描述 在横轴上放了n个相邻的矩形,每个矩形的宽度是1,而第i( ...

  6. CCF CSP 201609-3 炉石传说

    CCF计算机职业资格认证考试题解系列文章为meelo原创,请务必以链接形式注明本文地址 CCF CSP 201609-3 炉石传说 问题描述 <炉石传说:魔兽英雄传>(Hearthston ...

  7. CCF CSP 201403-3 命令行选项

    CCF计算机职业资格认证考试题解系列文章为meelo原创,请务必以链接形式注明本文地址 CCF CSP 201403-3 命令行选项 问题描述 请你写一个命令行分析程序,用以分析给定的命令行里包含哪些 ...

  8. CCF CSP 201709-4 通信网络

    CCF计算机职业资格认证考试题解系列文章为meelo原创,请务必以链接形式注明本文地址 CCF CSP 201709-4 通信网络 问题描述 某国的军队由N个部门组成,为了提高安全性,部门之间建立了M ...

  9. CCF CSP 201409-3 字符串匹配

    CCF计算机职业资格认证考试题解系列文章为meelo原创,请务必以链接形式注明本文地址 CCF CSP 201409-3 字符串匹配 问题描述 给出一个字符串和多行文字,在这些文字中找到字符串出现的那 ...

  10. CCF CSP 201503-3 节日

    CCF计算机职业资格认证考试题解系列文章为meelo原创,请务必以链接形式注明本文地址 CCF CSP 201503-3 节日 问题描述 有一类节日的日期并不是固定的,而是以“a月的第b个星期c”的形 ...

随机推荐

  1. 2025dsfz集训Day8:线段树

    Day8:线段树 前言:线段树听起来很高大尚,就是儿子节点表示法的树.几乎一样. \[Designed\ By\ FrankWkd\ -\ Luogu@Lwj54joy,uid=845400 \] 特 ...

  2. wpf 控件绑定鼠标命令、键盘命令

    1 <Window x:Class="CommandDemo.MainWindow" 2 xmlns="http://schemas.microsoft.com/w ...

  3. Java字节流--输出流OutputStream和输入流InputStream

    OutputStream和InputStream都是抽象类 OutputStream定义和InputStream定义 OutputStream InputStream public abstract ...

  4. MCP与华为云CSE珠联璧合,打造AI时代微服务生态引擎

    本文分享自华为云社区<MCP与华为云CSE珠联璧合,打造AI时代微服务生态引擎>,作者:华为云社区精选 从 AI 技术的"火热概念"到"实际业务的落地&quo ...

  5. RPC实战与核心原理之分布式环境下如何快速定位问题

    分布式环境下如何快速定位 回顾 如何建立可靠的安全体系,关键点就是"鉴权",我们可以通过统一的鉴权服务动态生成秘钥,提高 RPC 调用的安全性. 分布式环境下定位问题有哪些困难 举 ...

  6. C# 应用程序域

    在.NET中,每个应用程序域都是一个独立的执行环境,有自己的安全边界和上下文.当使用AppDomain.ExecuteAssembly方法在一个新的应用程序域中执行一个程序集时,这个程序集将会在新的应 ...

  7. Special Binary String——LeetCode进阶路

    原题链接https://leetcode.com/problems/special-binary-string/ 题目描述 Special binary strings are binary stri ...

  8. echart的使用心得

    前言:由于本人在最近的公司中接触了一些与数据可视化有关的项目,所以特意花了一些时间去学习了echarts,以下是我个人在使用与学习echarts的一些心得体会. 1.首先我们需要知道的是什么是Echa ...

  9. Win32汇编学习笔记05

    定位关键点3种方法: 过程函数 api 字符串 但是不确定用要哪一种方法,可以3种方法都用一下,因为在不同的程序,实用的方法是不一样的 窗口程序看控件信息 1.通过OD去看 还可以用 spy ++ 查 ...

  10. L3-3、从单轮到链式任务:设计协作型 Prompt 系统

    一.链式任务设计的概念与价值 在人工智能应用开发中,单轮对话往往无法满足复杂业务场景的需求.链式任务设计允许我们将复杂问题分解为一系列相互关联的子任务,每个子任务的输出可以作为下一个子任务的输入,从而 ...