本文的操作均在 windows 系统下运行。
修改头像
作者卡片的头像
在主题配置文件中找到
avatar: img: https://bu.dusays.com/2023/04/27/64496e511b09c.jpg effect: false
把 img: 后的链接改成你头像的链接就可以了。
加载动画的头像
在主题配置文件中找到
preloader: enable: true # source # 1. fullpage-loading # 2. pace (progress bar) # else all source: 3 # pace theme (see https://codebyzach.github.io/pace/) pace_css_url: avatar: https://npm.elemecdn.com/anzhiyu-blog-static@1.0.4/img/avatar.jpg
把 avatar: 后的链接改成你头像的链接就可以了。
修改新品主题
在主题配置文件中按 Ctrl+F 查找内容是新品主题然后就可以修改了, ...
首页随便逛逛 people 模式。
如果 people 模式图片没加载,请将 _config.anzhiyu.yml 里的
peoplecanvas: enable: true img: https://upload-bbs.miyoushe.com/upload/2023/09/03/125766904/ee23df8517f3c3e3efc4145658269c06_5714860933110284659.png
改为
peoplecanvas: enable: true img: https://unpkg.com/xyx404blogphoto@1.0.3/img/sbgg.png
首页随便逛逛技能点模式,请参照官方文档进行设置。
作者卡片显示名字。
将 _config.anzhiyu.yml 里的
social: # Github: https://github.com/anzhiyu-c || anzhiyu-icon-github # BiliBili: https://space.bilibili.com/372204786 || anzhiyu- ...
本文的操作均在 windows 系统下运行。
安装 hexo
下载 Git,阿里镜像链接。
下载 Node.js,官网链接。
在一个空的文件夹右键点击 Open Git Bash here。
运行 npm install -g hexo-cli 如果因为网络问题运行失败,请运行 npm config set registry https://registry.npmmirror.com 后重新运行 npm install -g hexo-cli。
运行 hexo init 接着运行 npm install。
运行 hexo s 然后在浏览器打开 http://localhost:4000 就可以查看初始的博客了。
注:CTRL+C 停止博客。
安装 anzhiyu 主题
打开 Open Git Bash here。
运行 git clone -b main https://github.com/anzhiyu-c/hexo-theme-anzhiyu.git themes/anzhiyu 或 git clone -b main https://ghproxy.com/ ...
洛谷专栏链接。
题目:
在我写题解时题目翻译有错误,故此处放上简略的正确翻译。
有 NNN 根竹子,编号从 111 到 NNN。初始时,所有竹子的高度是 000,时间每过一秒,每根竹子的高度增加 111。
有 MMM 个砍伐计划,第 iii 个计划在 TiT_iTi 时,将砍掉编号在 LiL_iLi 和 RiR_iRi 之间的竹子。当竹子砍下时高度为 xxx 时,会得到 xxx 的竹子。被砍掉的竹子高度将变为 000,之后还会生长。
求可以得到多少竹子。
完整题目,点击此处。
思路:
因为每过一秒高度都会增加一,且砍后会继续生长,所以我们可以只计算第 iii 个竹子最后是在什么时候被砍掉的,这个时间就是这个竹子的高度。
实现,在输入后我们可以直接从最后开始向前遍历,因为题目满足输入的时间 TiT_iTi 一定小于等于 Ti+1T_{i+1}Ti+1。
定义一个 set,类型为 int,名字叫 sesese,用来标记这个竹子有没有砍过。
用 lower_bound 函数查找在 sesese 里第一个大于等于 LiL_iLi 的值的位置,然后遍历编号在 LiL_iLi ...
思路:
遍历每个点,查看点的右方和下方,如果两个点分属不同的州且颜色相同输出 No 并结束程序,否则继续遍历,为什么不用查看上方和下方呢,因为我们是按顺序遍历的从左到右,从上到下,在遍历的过程中已经确认这个点和这个点的上方和左方符合条件了。
遍历完后输出 Yes。
代码:
#include<bits/stdc++.h>using namespace std;#define LL long long#define itn int#define ull unsigned long longint h,w,n,jz[210][210],c[500];int dx[]={0,1},dy[]={1,0};int main(){ memset(jz,0,sizeof(jz)); cin>>h>>w>>n; for(int i=1;i<=h;i++){ for(int j=1;j<=w;j++)cin>>jz[i][j]; } for(int i=1; ...
思路:
暴力枚举直到现在的日期满足出现过的数字为 222 种及以下。
注意当月份和天数小于 101010 时,需要在前面补一个 000,而这个 000 也是需要算进出现过的数字种数里的。
统计出现过的数字种数可以使用 unordered_set,这是基于哈希表实现的无序关联容器,不会有重复的元素。
至于每月天数可以做下洛谷的这题。
代码:
#include<bits/stdc++.h>using namespace std;#define LL long long#define itn int#define ull unsigned long longint y,m,d,tamp;char fuh;unordered_set<int>se;int day(int y,int m){ if(m==2){ if(y%4==0&&y%100!=0)return 29; else if(y%400==0)return 29; else{ return 28; } } if(m==1||m ...
思路:
因为可以添加 l、q、b 这三个字符,所以我们可以先把左、右端的这三个字符先拿出来,然后判断一下中间是否回文,如果不回文输出 No,如果回文再判断一下左,右端拿出来的字符串。
因为只能在开头处加字符,所以当从右端取出来的字符串的字符数量比左端取出来的字符串的字符数量少时,输出 No,当从右端取出来的字符串的字符数量比左端取出来的字符串的字符数量多时,分别从两个字符串的结尾对比字符,如果字符不一样则输出 No,因为只能加,不能删。
如果以上都过了,那么就输出 Yes。
代码:
#include<bits/stdc++.h>using namespace std; #define LL long long#define itn int#define ull unsigned long longstring s;int T;int main(){ cin>>T; while(T--){ cin>>s; int flag1=0,flag2=0; int len=s.size();s=" "+s; ...
思路:
定义两个数组 aaa 和 bbb,其中 aaa 存输入为正数的情况,bbb 存输入为负数时负数的绝对值,在定义两个变量 cntcntcnt 存起点矿石的情况,ansansans 存最多挖矿石几个矿石不包含起点矿石的情况。
输入完后将 aaa 数组与 bbb 数组排序。
排序过后枚举情况,共有两种情况,第一种完全不向右侧挖掘,第二种向右走两次向左走一次,每次枚举完情况后更新 ansansans 的值。
最终的结果为在输入中 ans+cntans+cntans+cnt。
代码:
#include<bits/stdc++.h>using namespace std; #define LL long long#define itn int#define ull unsigned long longvector<LL>a,b;// 分别存储正数和负数(取绝对值后)int main(){ LL n,m; cin>>n>>m; LL cnt=0;// 计算坐标为 0 的矿洞数量 a.push_back(0);// 下标从 1 开 ...