mX
  • 2024-09-17使用CUBE_MX使用I2C通信,实现对EEPROM的读写
    一、使用CUBE_MX配置1.配置I2C2.配置USART13.重中之重(在KEIL5打开串口使用的库)二、KEIL5配置#include"main.h"#include"i2c.h"#include"gpio.h"#include"usart.h"#include<stdio.h>voidSystemClock_Config(void);voidI2C_EE_Buf
  • 2024-09-15VP 【MX-S2】 解题报告
    VP【MX-S2】解题报告VPresult:比赛地址目录VP【MX-S2】解题报告【MX-S2-T1】变DescriptionConstraintsSolutionCode【MX-S2-T2】排DescriptionConstraintsSolutionSubtask2Subtask3FinalCode【MX-S2-T3】跳DescriptionConstraintsSolutionSubtask1Subtask2FinalCode
  • 2024-09-142024-09-14:用go语言,给定一个正整数数组 nums,定义一个加密函数 encrypt(x),其将一个整数 x 的每一位数字都替换为 x 中的最大数字,然后返回加密后的数字。 例如,encr
    2024-09-14:用go语言,给定一个正整数数组nums,定义一个加密函数encrypt(x),其将一个整数x的每一位数字都替换为x中的最大数字,然后返回加密后的数字。例如,encrypt(523)会返回555,encrypt(213)会返回333。现在需要计算数组中所有元素加密后的和,然后返回这个和。输入:nums=[10,2
  • 2024-09-14CF1793E Velepin and Marketi
    首先发现,每个人过的题是不同的,所以我们不关心过了那些题目。我们要直接去求分成\(k\)组最多的通过数是不容易的。我们可以转换一下,求当\(i\)个题通过的时候__最多__分多少组。为什么记最多,因为化成\(k\)个组通过\(i\)题可以的情况下,我们可以任意合并两个组,保证依然可以
  • 2024-09-132024 苍穹计划好题分享 (2)
    QOJ4211AliceandBob模拟赛中链的部分分很有启发意义:注意到每一个棋子的后继确定,所以只需考虑Alice和Bob每次移动哪颗棋子。容易发现按照颜色划分,所有结点构成若干连续段,假设我们强制钦定不能跨段移动棋子,那么胜负其实已经确定了,考虑每个结点有一个最大移动步数\(v_i\),
  • 2024-09-12九月补题计划
    暑假模拟赛(尤其是后半段题目难度上升)改题效率很低很低,隧导致咕了很多题没改,现在准备把暑假模拟赛的题只要是赛时没AC的再重新做一做写写题解,所以开启这个“九月补题计划”,简称“9B计划”。(共27场模拟赛)目前进度:1/27。CSP提高19.10A.start200行的大模拟,没什么看头,
  • 2024-09-11Cf Round 953 (Div. 2) (A-D)
    https://codeforces.com/contest/1978C:D:#include<bits/stdc++.h>usingnamespacestd;#definepiipair<int,int>#definemkpmake_pair#definelowbit(x)((x&(-x)))#defineintlonglongconstintmaxn=2e5+10;constintmod=998244353;in
  • 2024-09-11CF div2 round 960
    C.MadMADSum手玩规律题,预处理两次就能得到一个规律的答案。#include<bits/stdc++.h>usingnamespacestd;#definels(x)(x<<1)#definers(x)((x<<1)+1)intread(){ intret=0;charc=getchar(); while(c<'0'||c>'9')c=getc
  • 2024-09-11滑动窗口&动态规划-1031. 两个非重叠子数组的最大和
    问题描述问题求解本题还挺巧妙,有点类似两数和的扩展题。对于两个线段,我们可以固定右线段,然后寻找左线段的最大值。固定右线段使用到的算法是滑动窗口,寻找左线段最大值的算法是动态规划。时间复杂度:O(n)classSolution:defmaximizeWin(self,prizePositions:List[int
  • 2024-09-10【转载】mx noip day2 sol
    T1捏捏这个题才是签到题。右边为逆序对总数。为左边的值找一个具体意义,我们将证明这个值不大于等号右边的值。考虑冒泡排序,右边即冒泡排序交换的次数(每交换一次一定减少一个逆序对)。左边一定不大于冒泡排序交换次数,因为左边的值只考虑了复原需要向左移动的数,而未考虑向右移动
  • 2024-09-09WQS 二分学习笔记
    1.股票买卖问题1.11.0版本考虑现在有\(n\)天,每天的股票价格\(a_i\)已知。你手上同时只能持有至多一张股票,且一笔买卖需要支付\(c\)的手续费。求最大收益。1.1.1解法1:DP我们不妨设\(f(i,0/1)\)表示前\(i\)天结束后手上是否持有股票。转移非常简单:\[f(i,0)=\m
  • 2024-09-09CF1621G Weighted Increasing Subsequences 题解
    题目链接点击打开链接题目解法这种题就感觉每一步都不难想,但串在一起就不会显然考虑位置\(x\)作为\(lis\)的一部分,合法的\(lis\)的个数合法的约束是:令\(lis\)的最后一个位置为\(last\),满足\(\max\{a_{last+1},...,a_n\}>a_x\)不难发现,合法的\(last\)是一段区间
  • 2024-09-07求出最长好子序列
    给你一个整数数组nums和一个非负整数k。如果一个整数序列seq满足在范围下标范围[0,seq.length-2]中存在不超过k个下标i满足seq[i]!=seq[i+1],那么我们称这个整数序列为好序列。请你返回nums中好子序列的最长长度1.动态规划dp[i][j]表示将把i作为序
  • 2024-09-06CF1534(模拟赛记录)
    比赛页面ABCD都打的可以,然而E的+10直接葬送了大概率过的F1……先猜了个\(n-k+1\)的结论,但是没有写搜索查正确性(事实上确实不正确),于是两次罚时,第一次是交互格式错了。然后又猜了个\(\min(n-k+1,(n-1)/(k-1))\)的结论,过了几个小的搜索数据(\(n\le6\))的,大一点的没跑,于
  • 2024-09-062024.9.6 CF1307 模拟赛记录
    A:各捆干草间互相独立,所以优先移动距\(1\)近的。点击查看代码#include<bits/stdc++.h>#defineintlonglong#definepsbkpush_back#definefstfirst#definescdsecond#defineumapunordered_map#definepqueuepriority_queue#definevcvector#defineendl'\n'
  • 2024-09-05[USACO13OPEN] Photo G 题解
    前言题目链接:洛谷。题意简述一个长度为\(n\)的序列,有一些位置染了色。现给出\(m\)条限制,第\(i\)条限制为\(l_i\simr_i\)中有且仅有一个位置染色。求出满足这\(m\)中条件,染色位置个数最多为多少。\(n\leq2\times10^5\),\(m\leq10^5\)。题目分析方法\(1\):差
  • 2024-09-04具有 AI 加速的MIMX9332AVTXMAB、MIMX9332CVTXMAB、MIMX9332XVTXMAB、MIMX9332XVVXMAB(资料)i.MX 93 应用处理器
    i.MX93应用处理器通过集成的EdgeLock®SecureEnclave提供高效的机器学习(ML)加速和高级安全性,以支持高能效的边缘计算。i.MX93应用处理器是i.MX产品组合中首款集成可扩展Arm®Cortex®-A55内核的处理器,为基于Linux®的边缘应用和ArmEthos™-U65microNPU带来
  • 2024-09-03CF 2100-2400 data structures 乱做
    CF2002ECosmicRays\(\star\)顺着询问想增加二元组\((a,b)\)的影响。只需要考虑它的合并情况,即尾部什么时候会出现数字\(b\),而总时间可以看作是最后一个尾部的存在时间,所以我们只需要关心尾部用栈维护尾部的数值和存在时间(不难发现这是一个单调栈)vector<pair<LL,int>>s;
  • 2024-09-02ARC183D 做题记录
    超棒的贪心构造题。可以观察到每次操作的两个叶子,充要条件是路径上匹配边和非匹配边交替出现,操作完后全部取反。首先考虑答案上界,从是否能取到上界入手,是本题的突破口。考虑操作两个叶子\(x,y\),收益为\(dep[x]+dep[y]-2dep[\text{LCA}(x,y)]\)。若固定根\(r\),当\(\text
  • 2024-09-01Atcoder Beginner Contest 369
    AtcoderBeginnerContest369C-CountArithmeticSubarrays题意给出一个长度为\(n\)的序列\(A\),求有多少个\(A\)的连续子序列为等差数列。思路对于递增的右端点,左端点不减。使用双指针,枚举右端点,扫描左端点。时间复杂度:\(O(n)\)。代码#include<bits/stdc++.h>usi
  • 2024-08-31Atcoder Beginner Contest 369
    AtcoderBeginnerContest369唯一的一发罚时吃在A题,消息了。A挂一发的原因是以为\(A,B\)都是一位数,然后循环范围开了\([-10,20]\)。#include<bits/stdc++.h>usingnamespacestd;intmain(){ ios::sync_with_stdio(false),cin.tie(nullptr);// int_;cin>>_;while
  • 2024-08-29【转载】启发式合并
    https://zhuanlan.zhihu.com/p/560661911数据结构学习笔记(8)启发式合并启发式合并是用来解决子树中的统计问题。在codeforces上叫做dsuontree(树上启发式合并)。这里我们主要是来讲在树上进行启发式合并。实际上之前我有讲过启发式合并严格鸽:启发式合并看似暴力实则很快的
  • 2024-08-28CF1286E Fedya the Potter Strikes Back 题解
    题目链接点击打开链接题目解法牛题!题目实际上是要每次加入一个字符,求所有的\(border\)的神秘度之和考虑从前\(i-1\)个字符到前\(i\)个字符\(border\)的变化如果\(str_1=str_i\),会加入长度为\(1\)的\(border\),这一部分可以暴力加且只会保留\(i-1\)的\(border
  • 2024-08-28信息学奥赛一本通1314:【例3.6】过河卒(Noip2002)
    【题目描述】棋盘上A点有一个过河卒,需要走到目标B点。卒行走的规则:可以向下、或者向右。同时在棋盘上的某一点有一个对方的马(如C点),该马所在的点和所有跳跃一步可达的点称为对方马的控制点,如图3-1中的C点和P1,……,P8,卒不能通过对方马的控制点。棋盘用坐标表示,A点(0,0)、B点(n,
  • 2024-08-26Codeforces Round 968 (Div. 2)
    A.TurtleandGoodStrings题意:确定是否存在一种方案使得\(s=t_1+t_2+\cdots+t_m\),满足\(m>1\)且任意\(i<j\),\(t_i\)的第一个字母不等于\(t_j\)的最后一个字母。\(s_1\)和\(s_n\)一定不属于一个子串,因此\(s_1\nes_n\)是条件非法的必要条件。那么反