当前位置: 首页 > news >正文

codeforces每日两道思维题(第 二 天)

第二天

1 B. Same Parity Summands

原题链接:Problem - 1352B - Codeforces

rating : 1200

题目描述:
给定两个正整数 n(1≤n≤10^9)和 k(1≤k≤100)。将数字 n 表示为 k 个相同奇偶性的正整数之和(除以 2 时余数相同)。

换句话说,找到 a1, a2, …, ak,使得所有 ai>0,n=a1+a2+…+ak,并且所有 ai 同时是偶数或奇数。

如果不存在这样的表示,则报告它。


思路描述:

首先我们要知道一个点,那就是任何一个正整数加上一个偶数,这个数奇偶性不会发生改变,即一个奇数加一个偶数的和还是奇数,一个偶数加一个偶数的和还是一个偶数

所以,根据这个特性,我们只需要判断最后一个数字加上n%k之后会不会发生奇偶性变化,即判断n%k是否为偶数

如果为偶数,那么前k-1个数字我们让他是n/k,最后一个数字是n/k+n%k,因为n%k是偶数,所以最后一个数字的奇偶性跟前k-1个数字是相同的,这就是答案

如果n%k此时是奇数,那么我们可以将前k个数字都-1,判断n%k+k是否是偶数,如果是偶数,那么存在答案

如果n%k+k是奇数,那么一定不存在答案

那为什么我们不继续加上一个k试一下呢?

如果继续加一个k,此时就是n%k+2 * k,因为2 * k是偶数,不改变原数字奇偶性,所以等同于没加,所以不需要继续加

完整代码:

#include<iostream>long long int t;
long long int n, k;int main() {std::cin >> t;while (t--) {std::cin >> n >> k;//如果数字个数大于n,那么序列和一定大于n,一定无解if (k > n)std::cout << "NO" << std::endl;else {long long  int q = n / k;//商long long  int r = n % k;//余数//如果r是偶数,那么就是能转换成答案if (r % 2 == 0) {std::cout << "YES" << std::endl;for (int i = 1; i < k; i++)std::cout << q << ' ';std::cout << r + q << std::endl;continue;}//如果r此时不是偶数,看看能不能把r转换成偶数q--, r += k;if (q > 0 && r % 2 == 0) {std::cout << "YES" << std::endl;for (int i = 1; i < k; i++)std::cout << q << ' ';std::cout << r + q << std::endl;}else std::cout << "NO" << std::endl;}}return 0;
}

相关文章:

codeforces每日两道思维题(第 二 天)

第二天 1 B. Same Parity Summands 原题链接&#xff1a;Problem - 1352B - Codeforces rating : 1200 题目描述&#xff1a; 给定两个正整数 n&#xff08;1≤n≤10^9&#xff09;和 k&#xff08;1≤k≤100&#xff09;。将数字 n 表示为 k 个相同奇偶性的正整数之和&…...

【网络安全】-常见的网站攻击方式详解

文章目录 介绍1. SQL 注入攻击攻击原理攻击目的防范措施 2. 跨站脚本攻击&#xff08;XSS&#xff09;攻击原理攻击目的防范措施 3. CSRF 攻击攻击原理攻击目的防范措施 4. 文件上传漏洞攻击原理攻击目的防范措施 5. 点击劫持攻击原理攻击目的防范措施 结论 介绍 在数字时代&a…...

ElasticSearch学习笔记(一)

计算机软件的学习&#xff0c;最重要的是举一反三&#xff0c;只要大胆尝试&#xff0c;认真验证自己的想法就能收到事办功倍的效果。在开始之前可以看看别人的教程做个快速的入门&#xff0c;然后去官方网站看看官方的教程&#xff0c;有中文教程固然是好&#xff0c;没有中文…...

go写文件后出现大量NUL字符问题记录

目录 背景 看看修改前 修改后 原因 背景 写文件完成后发现&#xff1a; size明显也和正常的不相等。 看看修改前 buf : make([]byte, 64) buffer : bytes.NewBuffer(buf)// ...其它逻辑使得buffer有值// 打开即将要写入的文件&#xff0c;不存在则创建 f, err : os.Open…...

【Collection - PriorityQueue源码解析】

本文主要对Collection - PriorityQueue进行源码解析。 Collection - PriorityQueue源码解析 概述方法剖析 add()和offer()element()和peek()remove()和poll()remove(Object o) 概述 前面以Java ArrayDeque为例讲解了Stack和Queue&#xff0c;其实还有一种特殊的队列叫做Priori…...

Javascript_根据截止日期超时自动返回

例如定时交卷功能&#xff0c;隐藏一个input id"endTime"存放超时时间&#xff0c;例如2023-12-01 20:56:15&#xff0c;使用如下代码即可实现超时自动处理。 <script src"/jquery.min.js"></script><script type"text/javascript&qu…...

记录 | vscode设置自动换行

右上菜单栏 -> 查看 -> 打开自动换行 或者还有种方式&#xff0c;如下&#xff0c; 左下角小齿轮&#xff0c;点击设置 然后输入 Editor: Word Wrap &#xff0c;把开关打开为 on...

k8s引用环境变量

一 定义环境变量 ① 如何在k8s中定义环境变量 env、configmap、secret补充&#xff1a; k8s 创建Service自带的环境变量 ② 从pod属性中获取 kubectl explain deploy.spec.template.spec.containers.env.valueFrom关注&#xff1a; configMapKeyRef、fieldRef 和 resour…...

navicate16 2059 plugin http could not be loaded

plugin http could not be loaded 乱码 library path http.dll 今天新装一台机子的navicate遇到这个问题。 查了半天都是说 caching_sha2_password’的解决办法。 然后是咋解决的呢&#xff0c;真是丢脸 由于我是直接从浏览器复制下来的ip&#xff0c;所以虽然我只复制了ip地…...

dp-基础版动态规划(动态规划每日一题计划)10/50

最小路径和 class Solution {public static int minPathSum(int[][] grid) {int dp[][]new int[grid.length][grid[0].length];dp[0][0]grid[0][0];for(int i1;i<grid[0].length;i){dp[0][i]grid[0][i]dp[0][i-1];}for(int i1;i<grid.length;i){dp[i][0]grid[i][0]dp[i-…...

轻食沙拉店外卖配送小程序商城效果如何

轻食沙拉店也是餐饮业中较为受欢迎的品类&#xff0c;其具备健康属性绿色食材涵盖广泛人群&#xff0c;虽然如此&#xff0c;但也缺乏一定市场教育&#xff0c;部分消费者依然对这一类目知之甚少&#xff0c;而商家想要进一步扩大生意&#xff0c;就需要不断品牌宣传、餐品销售…...

Oracle ADRCI工具使用说明

1.ADRCI介绍 ADRCI是一个命令行工具&#xff0c;是Oracle 11g中引入的故障可诊断性架构的一部分。 ADRCI可以完成以下&#xff1a; 查看自动诊断信息库&#xff08;ADR&#xff09;中的诊断数据。 查看Health Monitor报告。 将事件和问题信息打包到zip文件中以传输到Oracle Su…...

Amazon CodeWhisperer 正式可用, 并面向个人开发者免费开放

文章作者&#xff1a;深度-围观 北京——2023年4月18日&#xff0c;亚马逊云科技宣布&#xff0c;实时 AI 编程助手 Amazon CodeWhisperer 正式可用&#xff0c;同时推出的还有供所有开发人员免费使用的个人版&#xff08;CodeWhisperer Individual&#xff09;。CodeWhisperer…...

8-Hive原理与技术

单选题 题目1&#xff1a;按粒度大小的顺序&#xff0c;Hive数据被分为&#xff1a;数据库、数据表、桶和什么 选项: A 元祖 B 栏 C 分区 D 行 答案&#xff1a;C ------------------------------ 题目2&#xff1a;以下选项中&#xff0c;哪种类型间的转换是被Hive查询语言…...

cloudflare Tunnel完整

下载和安装 curl -L ‘https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64’ -o ./cloudflared-linux-amd64 280 chmod x ./cloudflared-linux-amd64 281 ./cloudflared-linux-amd64 282 mv cloudflared-linux-amd64 cloudflared …...

微信聊天窗口测试用例

以前没测过客户端的测试&#xff0c;昨天面试被问到聊天窗口测试场景设计&#xff0c;感觉自己答的不好&#xff0c;结束后上网查了一下客户端/app测试的要点&#xff0c;按照测试策略来分&#xff0c;主要涉及到如下测试类型&#xff1a; 1、功能测试 2、性能测试 3、界面测试…...

Linux下配置邮箱客户端MUTT,整合msmtp + procmail + fetchmail

一、背景 在向 Linux kernel 社区提交patch补丁步骤总结&#xff08;已验证成功&#xff09;_kernel补丁-CSDN博客文章中提到如何向kernel社区以及其他类似如qemu、libvirt社区提交patch的详细步骤&#xff0c;但还有一点不足的是通过git send-email这种方法基本是只能发送patc…...

[每周一更]-(第75期):Go相关粗浅的防破解方案

Go作为编译语言&#xff0c;天然存在跨平台的属性&#xff0c;我们在编译完成后&#xff0c;可以再不暴露源代码的情况下&#xff0c;运行在对应的平台中&#xff0c;但是 还是架不住有逆向工程师的反编译、反汇编的情形&#xff1b;&#xff08;当然我们写的都不希望被别人偷了…...

停留时间是您需要跟踪的 SEO 指标

介绍 停留时间是指用户在点击搜索引擎结果后但在返回搜索引擎结果页面之前在网站上花费的时间。它是搜索引擎优化 &#xff08;SEO&#xff09; 的一个重要指标&#xff0c;因为它衡量用户参与度并指示网站是否向访问者提供有价值且相关的内容。搜索引擎&#xff0c;如谷歌&am…...

ES常用操作语句

ES常用操作语句 注&#xff1a;本文中的操作语句基于ES5.5和7.7的版本&#xff0c;版本不同操作语句上可能有细微差别&#xff0c;如5.5版本有索引类型&#xff0c;7.7版本已废弃&#xff0c;查询不应该带索引类型 新增 # 添加字段&#xff0c;并设置字段类型 PUT /索引/_map…...

Axure RP 中文界面终极改造:告别英文困扰的完整指南

Axure RP 中文界面终极改造&#xff1a;告别英文困扰的完整指南 【免费下载链接】axure-cn Chinese language file for Axure RP. Axure RP 简体中文语言包。支持 Axure 11、10、9。不定期更新。 项目地址: https://gitcode.com/gh_mirrors/ax/axure-cn 还在为Axure RP的…...

Godot开发者的宝藏:awesome-godot资源库使用指南与实战技巧

1. 项目概述&#xff1a;一个游戏开发者的“藏宝图”如果你正在用Godot引擎做游戏&#xff0c;或者对这个开源、轻量又强大的工具感兴趣&#xff0c;那你大概率听说过或者正在寻找一个叫“awesome-godot”的仓库。这可不是一个普通的代码项目&#xff0c;它更像是一份由全球God…...

基于Python与MediaPipe的手势控制系统:从原理到实战

1. 项目概述&#xff1a;用摄像头读懂你的手&#xff0c;让手势成为新鼠标如果你厌倦了每天在键盘和鼠标之间来回切换&#xff0c;或者只是单纯想体验一下《少数派报告》里汤姆克鲁斯隔空操作电脑的酷炫感&#xff0c;那么这个基于Python的手势控制系统绝对值得你花时间折腾一下…...

Windows 11任务栏透明化完整教程:TranslucentTB让你的桌面焕然一新

Windows 11任务栏透明化完整教程&#xff1a;TranslucentTB让你的桌面焕然一新 【免费下载链接】TranslucentTB A lightweight utility that makes the Windows taskbar translucent/transparent. 项目地址: https://gitcode.com/gh_mirrors/tr/TranslucentTB 想让Windo…...

终极音乐解锁指南:3步免费解锁任何加密音乐文件

终极音乐解锁指南&#xff1a;3步免费解锁任何加密音乐文件 【免费下载链接】unlock-music 在浏览器中解锁加密的音乐文件。原仓库&#xff1a; 1. https://github.com/unlock-music/unlock-music &#xff1b;2. https://git.unlock-music.dev/um/web 项目地址: https://git…...

保姆级教程:手把手拆解Android相机启动流程,从点击图标到预览画面发生了什么?

从点击到成像&#xff1a;Android相机启动全链路技术解析 当你在旅行中突然发现值得记录的瞬间&#xff0c;手指本能地点击相机图标的那一刻&#xff0c;手机内部其实已经触发了一场精密协作的"交响乐演出"。作为Android开发者&#xff0c;理解这套从用户界面直达硬件…...

手机号到QQ号查询技术实现原理与TEA加密通信架构解析

手机号到QQ号查询技术实现原理与TEA加密通信架构解析 【免费下载链接】phone2qq 项目地址: https://gitcode.com/gh_mirrors/ph/phone2qq phone2qq是一个基于Python实现的逆向工程工具&#xff0c;通过分析腾讯QQ客户端的通信协议&#xff0c;实现了通过手机号查询对应…...

Stata 数据处理实战:时间序列数据的日期转换与聚合

1. 时间序列数据处理的常见痛点 刚接触时间序列分析的朋友们&#xff0c;经常会遇到这样的困扰&#xff1a;从Excel导入的数据明明是日期格式&#xff0c;到了Stata里却变成了看不懂的字符&#xff1b;想按周汇总销售数据&#xff0c;却发现系统根本不认识"2023-W15"…...

Cheat Engine 简单使用教程(新手版)

很多人第一次打开 Cheat Engine&#xff0c;都会被界面吓到。 其实真没那么复杂。 如果你只是想修改一下单机游戏里的金币、血量或者资源&#xff0c;掌握下面这几个步骤基本就够用了。 一、先打开游戏&#xff0c;再启动 Cheat Engine 这一点很多新人容易搞反。 正确顺序是…...

别再为混合仿真发愁了!手把手教你用Cadence AMS搭建Verilog+模拟电路联合仿真环境

混合仿真实战&#xff1a;从零搭建Verilog与模拟电路的联合仿真环境 第一次接触混合仿真的工程师们&#xff0c;往往会在数字与模拟世界的交界处感到迷茫。Verilog的离散事件与SPICE的连续波形如何共存&#xff1f;信号在不同域之间传递时会出现哪些意想不到的问题&#xff1f…...