A 牛牛冲钻五

模拟,逐位处理判断前三位即可

#include <bits/stdc++.h>
using namespace std;
#define rep(i, j, k) for (ll(i) = (j); (i) <= (k); (++i))
typedef long long ll;
void solve() {int n, k;string s;cin >> n >> k >> s;int ans = 0, sz = s.size() - 1;rep(i, 0, sz)if (s[i] == 'W') {ans++;if (s[i - 1] == 'W' and s[i - 2] == 'W')ans += (k - 1);} elseans--;cout << ans << '\n';
}
signed main() {int t;cin >> t;while (t--)solve();return 0;
}

B 爱吃素

仅当 a = 1 a=1 a=1​​​ 且 b b b​​​ 为素数或 b = 1 b=1 b=1​​​ 且 a a a​​​ 为素数时,$$ 才为素数

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
void solve() {ll s, t;cin >> s >> t;if ((s != 1 and t != 1) || (s == 1 and t == 1))cout << "NO" << '\n';else if (s == 1 || t == 1) {ll tmp = (t == 1 ? s : t);for (ll i = 2; i * i <= tmp; ++i) if (tmp % i == 0)return cout << "NO" << '\n', void();return cout << "YES" << '\n', void();} elsecout << "NO" << '\n';
}
signed main() {int t;cin >> t;while (t--)solve();return 0;
}

C 糟糕的打谱员

题意

给定一个记录了 n n n 步有误的棋局记录表,每步包含两个整数 a a a, b b b,分别表示 棋手 a a a 在该步中下在了编号为 b b b 的劫争处。先要在 n n n 步有误的棋局记录表中,找出一个最长的合法行棋子序列。

一个合法行棋子序列需要满足:

  1. 任意相邻的两步,玩家不同(一黑一白);
  2. 任意相邻的两步,不能下在同一个劫争处。

Solution

如果dfs考虑每一条记录的选择,时间复杂度太高不可接受,且考虑到劫争处数量较小,dp记录劫争处当前最长的合法行棋子序列长度。

如果当前记录为黑方在编号为 b b b 的劫争处落子,则从上一条记录中白方不能在编号为 b b b​ 的劫争处落子;反之同理,那么就很容易写出转移方程:
$
dp[c][b]=max(dp[c][b],dp[(c+1)%2][i]+1)\quad \quad \quad i!=b && i\in [1,10]
$

#include <bits/stdc++.h>
using namespace std;
#define rep(i, j, k) for (ll(i) = (j); (i) <= (k); (++i))
#define mem(x, y) memset(x, y, sizeof(x))
typedef long long ll;
int dp[2][15];
void solve() {mem(dp, 0);int n, x, y, res = 0;cin >> n;rep(i, 1, n) {cin >> x >> y;rep(i, 1, 10) {if (i == y) continue;dp[x][y] = max(dp[x][y], dp[(x + 1) % 2][i] + 1);}res = max(res, dp[x][y]);}cout << res << endl;
}
signed main() {int t;cin >> t;while (t--)solve();return 0;
}

D Mendeleev 1417

n n n​ 个人中任意挑选 1 ∼ n 1\sim n 1∼n​ 个人,问挑选方案中奇数个人与偶数个人的方案数之差。

很显然能够看出:

挑选偶数个人的方案数为 S u m e v e n = ∑ i n [ i % 2 = = 0 ] C n i ( i > 0 ) Sum_{even}=\sum_{i}^{n}[i\%2==0]C_n^{i} (i>0) Sumeven​=∑in​[i%2==0]Cni​(i>0)​

挑选奇数个人的方案数为 S u m o d d = ∑ i n [ i % 2 = = 1 ] C n i ( i > 0 ) Sum_{odd}=\sum_{i}^{n}[i\%2==1]C_n^{i} (i>0) Sumodd​=∑in​[i%2==1]Cni​(i>0)

根据二项式定理: C n e v e n = C n o d d C_{n}^{even}=C_{n}^{odd} Cneven​=Cnodd​

除去挑选 0 0 0 个人的情况,则可知奇数个人与偶数个人的方案数之差永远为 − 1 -1 −1。

#include <bits/stdc++.h>
using namespace std;
void solve() {int n;cin >> n;cout << "-1\n";
}
signed main() {int t;cin >> t;while (t--)solve();return 0;
}

“21 天好习惯”第一期-10相关推荐

  1. “21天好习惯“第一期--4

    "21天好习惯"-第四天 每天记录一点点 计算机的诞生与发展 冯·诺依曼体系 计算机系统作为一个能够自动地处理信息的智能化工具,必须解决好两个最基本的问题:①信息如何表示才能方便地 ...

  2. “21天好习惯”第一期-第10天

    今天学会了一个猜数的程序,这个程序可以让计算机随机生成一个100以内的数,然后我们人来猜这个数是什么. #include<stdio.h> #include<stdlib.h> ...

  3. “21天好习惯” 第一期 - 18

    今天进一步探究昨天学习的strcmp()函数:         昨天学习strcmp()函数时提到了,当两个字符串相同时,输出0,不相同时,输出非零,那么当两个字符串不同时,具体会输出什么非零值呢?于 ...

  4. “21天好习惯”第一期- 4 简单的壁纸爬虫

    有时候我们不想让电脑桌面过于单调,于是琢磨着能不能让电脑每天自动获取网站上的图片然后更换为壁纸,这就需要一个壁纸爬虫了,这里以3G壁纸为例. 首先,还是喜闻乐见的导入模块,在这个爬虫中,我们需要以下模 ...

  5. “21天好习惯”第一期——21

    <计算机组成原理> 3.5.2 MIPS32架构CPU基本的组成部件 3. 单周期控制系统设计 (2)ALU控制单元      ALU控制单元接收两种输入:主控单元输出的m位aluop和指 ...

  6. “21天好习惯”第一期——16

    <计算机组成原理> 第一章 概论 1.1.2 存储程序工作方式 存储程序是计算机的核心内容,表明了计算机的工作方式,包含3个要点:事先编写程序,存储程序,自动.连续地执行程序. (1)根据 ...

  7. “21天好习惯“第一期——2

    道友们好,今天是学习的第二天,经过一天的学习我又了解到了很多有关C语言的知识,我也会和大家继续分享我的学习笔记,以及在学习中遇到的问题. 请大家看看下面这个程序: 今天的学习就到此为止,希望大家可以向 ...

  8. “21天好习惯”第一期——2

    今天学习的内容是3.3.2--算术逻辑单元. 继续昨天的学习的内容进一步学习了ALU: ALU的外部特性与功能: ALU的标志位: ALU的EDA设计模式: 学习中遇到的问题主要是ALU的EDA设计模 ...

  9. “21天好习惯“ 第九期—9:京东倒计时,淘宝倒计时

    "21天好习惯" 第九期 - 9 一.学习规划 1.计算机组成图谱绘画(应为知识导图)(10月25) 2.网络工程师备考(11月6) 3.信息知识竞赛(10月31) 二.所遇问题 ...

  10. “21天养成好习惯”第一期——21

    1.今天是关于数组 概念在上图里面同时还有诸多注意事项 1.数组的下标均以0开始: 2.数组在初始化的时候,数组内元素的个数不能大于声明的数组长度: 3.如果采用第一种初始化方式,元素个数小于数组的长 ...

最新文章

  1. OA发展史:由点到生态
  2. ogg mysql的原理_OGG基础原理了解
  3. TurboMail邮件系统通过涉密信息系统产品认定
  4. 【Java爬虫】我的第一个爬虫 -- 简单抓取网页源代码
  5. 线性搜索或顺序搜索算法在Java中如何工作? 示例教程
  6. 如何降低 Python 的内存消耗量?
  7. perl统计http日志ip
  8. STM32+MFRC522完成IC卡号读取、密码修改、数据读写
  9. 松下A5伺服驱动器的A/B/Z相脉冲输出,怎样与PLC的输入端连接的?
  10. 安装nodejs时:The error code is 2503.
  11. oracle中alter用法,Oraclealter用法
  12. php 秒拍视频解析,高仿秒拍视频网EMLOG主题模板
  13. java计算机毕业设计基于web旅游网站的设计与实现源代码+数据库+系统+lw文档
  14. prometheus服务配置Altermanager监控告警
  15. 把数据转化为JSON格式
  16. python画哆啦a梦图片_80行代码!用Python做一个哆来A梦分身
  17. Weighted average
  18. webapi做为后端接口时在跨域调用时的注意点
  19. 2017-2018-1 20162316刘诚昊 实验二 树
  20. c语言eof_C语言持续深耕

热门文章

  1. java appkey_1.新建Android studio工程2.新建class:AppKey.java.主要为了保存密钥代码块package com...adminap...
  2. 前端框架/架构,性能优化,负载均衡,首屏渲染
  3. SpringBoot+MySql+LayUI实现数据导出的功能(Excel表)
  4. 生活片段(4)我所见过的母亲3
  5. 想实现数据分页,就用dataTabale+jquery语句实现分页效果和查询功能和自动排序,简单实用强烈推荐
  6. PDSC: Sequence excution failed
  7. 2022.5.25我在咸鱼上50元买了一只威尔胜网球拍
  8. uni-app微信小程序接入皮卡智能api进行抠图操作
  9. 如何使用screen托管终端程序(妈妈再也不用担心我在家还不学习了系列四)
  10. python中retry的简单用法