Day 01: Random Mashup

2023-12-28 01:08
文章标签 01 day random mashup

本文主要是介绍Day 01: Random Mashup,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

2018.7.19

今天是训练的第一场比赛

今日ranklist:

A. Levko and Table

题意:给定n和k,要求你构造出一个n维方阵使得每行每列的和等于k

解法:对角线是k 其他数是0即可

B. Levko and Permutation

题意:给定n和k,要求你构造出一个序列有n个数(1~n),使得每个数与其下标的最大公约数大于等于1的个数为k个

解法:只需要构造出:n - k  1  2  3  ...   n - k - 1  n - k + 1  n - k + 2  ...   n 这样的一个序列即可

C. Levko and Array Recovery

题解见:Levko and Array Recovery

D. Adding Digits

题意:给定a, b, n三个数 需要你在a的数后面添加n个数字使得b可以整数a,判断能不能成功

解法:只需要判断第一次能不能成功即可,后面全部加0就可以了。否则就失败

E. Ancient Prophesy

题意:dd-mm-yyyy为一个正确的日期格式,给定一个字符串问你出现最多的是哪个日期

解法:由于日期限定为2013-2015,暴力就可以了。预处理出所有日期一个一个搜索即可。复杂度O(3*365*N)

F. Balls and Boxes

题解见:Balls and Boxes

G. Roma and Lucky Numbers

题意:给定数字问有多少个数的4和7的个数不超过k位

解法:模拟即可

H. Roma and Changing Signs

题意:给你一个不严格递增的序列,一次操作代表你将一个数乘以-1,问你k次操作后能达到的所有数的最大的和是多少

解法:首先将所有负数变为正的(由小到大),如果还需要操作,那就找一个绝对值最小的数进行剩下的操作。

奇数次操作则乘以-1,偶数次则不变。

训练的时候想的太复杂了,还分正负零的情况讨论,其实只需要考虑绝对值就行了。

I. Maxim and Discounts

题解见:Maxim and Discounts

J. Maxim and Restaurant

题解见:Maxim and Restaurant

K. Black and White Tree

题解见:Black and White Tree

这篇关于Day 01: Random Mashup的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

hdu 2602 and poj 3624(01背包)

01背包的模板题。 hdu2602代码: #include<stdio.h>#include<string.h>const int MaxN = 1001;int max(int a, int b){return a > b ? a : b;}int w[MaxN];int v[MaxN];int dp[MaxN];int main(){int T;int N, V;s

day-51 合并零之间的节点

思路 直接遍历链表即可,遇到val=0跳过,val非零则加在一起,最后返回即可 解题过程 返回链表可以有头结点,方便插入,返回head.next Code /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}*

集中式版本控制与分布式版本控制——Git 学习笔记01

什么是版本控制 如果你用 Microsoft Word 写过东西,那你八成会有这样的经历: 想删除一段文字,又怕将来这段文字有用,怎么办呢?有一个办法,先把当前文件“另存为”一个文件,然后继续改,改到某个程度,再“另存为”一个文件。就这样改着、存着……最后你的 Word 文档变成了这样: 过了几天,你想找回被删除的文字,但是已经记不清保存在哪个文件了,只能挨个去找。真麻烦,眼睛都花了。看

Linux基础入门 --9 DAY

文本处理工具之神vim         vi和vim简介 一、vi编辑器 vi是Unix及类Unix系统(如Linux)下最基本的文本编辑器,全称为“visual interface”,即视觉界面。尽管其名称中包含“visual”,但vi编辑器实际上工作在字符模式下,并不提供图形界面。vi编辑器以其强大的功能和灵活性著称,是Linux系统中不可或缺的工具之一。 vi编辑器具有三种主要的工作模

day-50 求出最长好子序列 I

思路 二维dp,dp[i][h]表示nums[i] 结尾,且有不超过 h 个下标满足条件的最长好子序列的长度(0<=h<=k),二维数组dp初始值全为1 解题过程 状态转换方程: 1.nums[i]==nums[j],dp[i,h]=Math.max(dp[i,h],dp[j,h]+1) 2.nums[i]!=nums[j],dp[i,h]=Math.max(dp[i,h],dp[j,h-1

01 Docker概念和部署

目录 1.1 Docker 概述 1.1.1 Docker 的优势 1.1.2 镜像 1.1.3 容器 1.1.4 仓库 1.2 安装 Docker 1.2.1 配置和安装依赖环境 1.3镜像操作 1.3.1 搜索镜像 1.3.2 获取镜像 1.3.3 查看镜像 1.3.4 给镜像重命名 1.3.5 存储,载入镜像和删除镜像 1.4 Doecker容器操作 1.4

[Day 73] 區塊鏈與人工智能的聯動應用:理論、技術與實踐

AI在健康管理中的應用實例 1. 引言 隨著健康管理需求的提升,人工智能(AI)在該領域的應用越來越普遍。AI可以幫助醫療機構提升效率、精準診斷疾病、個性化治療方案,以及進行健康數據分析,從而改善病患的健康狀況。這篇文章將探討AI如何應用於健康管理,並通過具體代碼示例說明其技術實現。 2. AI在健康管理中的主要應用場景 個性化健康建議:通過分析用戶的健康數據,如飲食、運動、睡眠等,AI可

Vue day-03

目录 Vue常用特性 一.响应更新 1. 1 v-for更新监测 1.2 v-for就地更新 1.3 什么是虚拟DOM 1.4 diff算法更新虚拟DOM 总结:key值的作用和注意点: 二.过滤器 2.1 vue过滤器-定义使用 2.2 vue过滤器-传参和多过滤器 三. 计算属性(computed) 3.1 计算属性-定义使用 3.2 计算属性-缓存 3.3 计算属

用Python实现时间序列模型实战——Day 14: 向量自回归模型 (VAR) 与向量误差修正模型 (VECM)

一、学习内容 1. 向量自回归模型 (VAR) 的基本概念与应用 向量自回归模型 (VAR) 是多元时间序列分析中的一种模型,用于捕捉多个变量之间的相互依赖关系。与单变量自回归模型不同,VAR 模型将多个时间序列作为向量输入,同时对这些变量进行回归分析。 VAR 模型的一般形式为: 其中: ​ 是时间  的变量向量。 是常数向量。​ 是每个时间滞后的回归系数矩阵。​ 是误差项向量,假

Numpy random.random()函数补充

np.random.random() np.random.random()的作用是生成指定形状的均匀分布的值为[0,1)的随机数 参数为size,也就是用于指定的形状大小 import numpy as npprint(np.random.random(size=(2, 2)))# [[0.19671797 0.85492315]# [0.99609539 0.66437246]]