Mslxl

Integrate Life

皈依 NixOS

Posted at # Linux # NixOS

用了几天时间折腾 NixOS,现在大概是能满足日常日常使用了,几天使用下来体验还算不错。这也不是我第一次使用 Linux 发行版了,但如果不是因为事先了解,初次使用肯定也是发愣的。 不同于其他 Linux 发行版,NixOS 并没有遵守 FHS 标准,也就是说其他发行版的经验很难在 NixOS 同用。在刚安装时最明显的特点有两个: 系统配置目录(/etc)下在文件都是只读的 /bin/sh 目录只有 sh NixOS 几乎将所有的文件存储在 /nix/store 下,而后通过链接的方式放到对应的文件夹下,而 /nix/store 又是通过 /etc/nixos/configuration.nix 配置获得的。用户也是通过修改 configuration.nix 文件来修改系统配置甚至是单个用户的配置,在修改后使用 nixos-rebuild switch 命令应用新配置。这条命令实际上

Codeforces Round 897 (Div. 2)

打了一半困了,提前下班了 A. green_gold_dog, array and permutation 给一个长度为 $n$ 的数组 $a$,找到一个长度为 $n$ 的排列 $b$,使之 $a_i - b_i$ 的值不同的数量最大 离散化 贪心 看样例大胆猜测将数组中第 $k$ 大的元素和排列中的 $n-k$ 放在一起,可以使 $a_i - b_i$ 的值不同的数量最大 如果用最大的数减去最小的数,第二大的数减去第二小的数,依次类推,所获得的值应该是依次递减的 因为 $a_1 \ge a_2 \ge a_3 \ge \ldots \ge a_n$ ,而 $b_1 < b_2 < \ldots < b_n$,则 $-b_1 > -b_2 > \ldots > -b_n$,最终结果 $a_1 - b_1 > a_2 - b_2 > \ld

速通 Go 语言基础

Posted at # Go

马上就退役了,要为下一步做点准备了。先速通一下 GO 语言基础,本文章参考了 GO TOUR 和字节的青训营课程,通过列出一些代码来快速上手 GO 语言。 阅读可能要需要具有其他语言的编程经验 语法 hello,world package main import "fmt" func main() { fmt.Println("hello, world") } 程序总是从 main 包下的 main 函数开始执行 import 语句可以导入包,除了使用 import 语言单个单个导入外,还可以使用分组导入 import ( "fmt" "math" ) 函数 func add(x int, y int) int { return x + y } // 缩写 func minus(x, y int) int { return x - y } //

Pinely Round 2 (Div. 1 + Div. 2) A-E

A. Channel 有 $n$ 个人订阅了一个频道,当前在线 $a$ 人,收到了 $q$ 个上/下线通知 上下线通知不包含上线的用户信息。在最开始的时候 Petya 发了一个视频,请判断是否所有的订阅用户都能看到这个视频 模拟 如果所有的人在同一时刻在线,那么所有用户都能看到 如果在线人数和收到上线通知的次数和大于等于 $n$,则可能都能看见 void solve() { int n, a, q; read(n, a, q); std::string s; std::cin >> s; if(a == n){ std::cout << "YES"; return; } int online = a; for(int i = 0; i < q; i++){ if(s[i] == '+'){

Game tag 板刷网瘾记录

CF1844A. Subtraction Game 输入两个数组 $a,b$ 两个玩家将一摞$n$个石子堆上进行游戏,玩家一轮可以从石堆中移除 $a$ 个石子或 $b$ 个石子,不能行动的玩家输。 寻找石子堆的石子数量 $n$,使得无论第一个玩家如何行动,第二个玩家总能获胜 *800 只要一共有 $a+b$ 个石子,那么先手必输 void solve() { i32 a, b; read(a, b); std::cout << a+b; } CF1842A. Tenzing and Tsondu Tsondu 和 Tenzing 正在玩纸牌游戏。Tsondu 有 $n$ 个能量为 $a_1, a_2, \ldots,a_n$ 怪物,Tenzing 有 $m$ 个能量为 $b_1, b_2, \ldots, b_m$的怪物 Tsondu 和 Tenzing 轮

Harbour.Space Scholarship Contest 2023-2024 (Div. 1 + Div. 2) A-E 二进制拆分 组合数学

A.Increasing and Decreasing 制造一个序列,序列从 $x$ 开始,到 $y$ 结束,一共 $n$ 个数。满足 序列是严格递增的 序列相邻两项的值是严格递减的 构造 *579 直接从 $y$ 开始构造一个倒序构造一个递减序列,使每次减少的值在不重复的情况下尽可能小 void solve(){ int x, y, n; read(x, y, n); std::vector<int> d(n); d[n-1] = y; for(int i = 2; i <= d.size(); i++){ d[d.size() - i] = d[d.size() - i + 1] - (i - 1); } if(x > d[0]){ std::cout

Codeforces Round 894 (Div. 3) A-G

A. Gift Carpet 输入一个 $n$ 行 $m$ 列的字符矩阵,判断矩阵中从前往后的列中能不能找到特定的字符组成 vika 暴力 直接旋转矩阵然后暴力判断 :) T = int(input()) def solve(): r, c = list(map(int, input().split())) s = [input() for i in range(r)] s[::] = [[row[i] for row in s[::-1]] for i in range(len(s[0]))] s = ["".join(i) for i in s] v, vi, vik, vika = [False, False, False, False] for line in s: if vik and 'a' in line: vika = T

LeetCode 周赛 359

A. 判别首字母缩略词 给你一个字符串数组 words 和一个字符串 s ,请你判断 s 是不是 words 的 首字母缩略词 。 如果可以按顺序串联 words 中每个字符串的第一个字符形成字符串 s ,则认为 s 是 words 的首字母缩略词。例如,"ab" 可以由 ["apple", "banana"] 形成,但是无法从 ["bear", "aardvark"] 形成。 如果 s 是 words 的首字母缩略词,返回 true ;否则,返回 false 。 模拟 class Solution { public: bool isAcronym(vector<string>& words, string s) { std::string ans; for(auto s: words) ans += s[0];

Educational Codeforces Round 153 A-E (博弈论 DP 拆点)

A. Not a Substring 给一个仅由 ( 和 ) 组成的字符串$a$,它的长度为 $n$。要求构造一个长度为 $2n$ 的新字符串 $b$,且 $a$ 不是 $b$ 的连续子串。输出新字符串 $b$。 构造 很明显一个字符串如果是 (((()))) 的子字符串,那它一定不是 ()()()() 的子字符串。因此只需要构造出两个字符串进行判断即可。 void solve() { std::string s; std::cin >> s; std::string s1, s2; rep(i, s.size()) { s1 += "()"; s2 += "("; } rep(i, s.size()) { s2 += ")"; } if (s1.find(s) == std::string::npos) { std::

Codeforces Round 891 (Div. 3) A-G

A. Array Coloring 给一个长度为 $n$ 的数组,判断数组能否分为两组元素的加和的奇偶性相同的两组 思维 考虑数组中奇数的数量,由于奇数 + 奇数 = 偶数,奇数 + 偶数 = 奇数,如果有偶数个奇数,我们可以将奇数其平分到两个数组中,否则无论如何都无法满足条件 void solve(const std::size_t testcase) { multitest{ std::vector<i32> s(n); reads(all(s)); int odd = 0; for(auto i : s) if(i % 2 != 0) odd++; std::cout << (odd % 2 == 0 ? "YES": "NO"); } } B. Maximum Rounding

moe-counter

统计自 2024 年 9 月