首页 > TAG信息列表 > RET

编写休闲小游戏

#include<stdio.h> #include<stdlib.h> #include<time.h> #include<windows.h> #include<string.h> #define ROW 3 #define COL 3 int Login() { char User[20]; char Password[20]; char ch; int ret; int n;

Linux 监测内存访问的方法汇总【转】

转自:https://blog.csdn.net/dianzichongchong/article/details/120133833 1. hw break point它是 linux kernel 自带的,监测一段内存访问信息的方法。它可以检测一段内存是否被读或写。 具体可见 linux 自带例子:linux/samples/hw_breakpoint/data_breakpoint.c static int __init h

模板-数论

原来源: dian巨 阶乘逆元求组合数 在做D - Madoka and The Corruption Scheme时, 一个满二叉树的走法就是C(n,i), 在n轮中赢几场, 最终就是杨辉三角前缀和 template<typename T = long long, int P = 1000000007> class Combination{ public:// 初始化组合数, mul[i]=i!, div[i

Golang获取随机float64(正数)数据与随机int数据(可以是负数)

package utils import ( "fmt" "github.com/shopspring/decimal" "math" "math/rand" "testing" "time" ) func init() { // 初始化rand模块的Seed,要不然所有的随机值会一样~ rand.Seed(time.N

P1967 [NOIP2013 提高组] 货车运输

给定一张图, \(q\) 组询问从 \(s_i\) 到 \(t_i\) 路径上最大边权的最小值。 \(n < 10^4\),\(m < 5 \times 10^4\),\(q<3\times10^4\)。 首先,所有询问的答案均在原图的最小生成树上,是最小生成树的瓶颈边,因为任何不在最小生成树上的边一定比原边更大,然后问题就变成寻找树上2点的路径上

AtCoder Beginner Contest 266 G,H

G 考虑先放G和B,此时共有\(C_{G+B}^{B}\)种方案。 然后选出\(k\)个G,在前面放上\(R\),共有\(C_{G}^{k}\)种方案。 最后我们放剩下的\(R-K\)个R,考虑目前哪些区间内部可以放一段连续的\(R\)。可以发现,单独G的后面,以及B的前后,RG的前后是可以放的,总共是\(B-k+1\)个区间内可以放\(R\)。那

CF896C Willem, Chtholly and Seniorious

写一种数据结构,支持: \(1\) \(l\) \(r\) \(x\) :将\([l,r]\) 区间所有数加上\(x\) \(2\) \(l\) \(r\) \(x\) :将\([l,r]\) 区间所有数改成\(x\) \(3\) \(l\) \(r\) \(x\) :输出将\([l,r]\) 区间从小到大排序后的第\(x\) 个数是的多少(即区间第\(x\) 小,数字大小相同算多次,保证 \(1\leq

P1659 [国家集训队]拉拉队排练

求字符串的奇数长回文子串中前 \(k\) 长的大小之积 \(mod\) 19930726。 \(k\leq 10^{12},|S|\leq 10^6\)。 不插入#跑一遍马拉车得到长度为奇数的回文串,用数组 \(k\) 表示有 \(k[i]\) 种回文串长度为 \(i\) 的子串。由于长度为 \(i\) 的串一定是长度为 \(i-2\) 的串,所以用后缀和

Python 使用wmi获取远程端电脑的磁盘使用情况

安装wmi包 pip install wmi 说明:执行上面命令会自动安装依赖包pywin32 代码演示 import json as JSON import re import paramiko import suds from suds.wsse import * import wmi class WindowsDisListen(): """Windows系统""" def getSpaceInfo(self,

一个初级的网络程序示例--创建socket,绑定ip地址

  一个linux程序 网络通信的服务器,监听某个端口号。这里的代码介绍了如何绑定ip地址,如何创建socket,如何设置Ip地址族等 #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> #include <signal.h> #include <unistd.h> #include <stdlib.h> #include <asser

青蛙跳台阶

基础版 青蛙一次可以跳1级或者2级台阶,问跳到N级有多少种跳法 class Solution: def jumpFloor(self,n): if n < 1: return 0 if n == 1 or n == 2: return n a = 1 b = 2 tmp = 1 for i in range(2,n

C学习笔记:自己写的函数实现strtok函数的功能

#define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> #include <string.h> #include <ctype.h> int sign(char* str, char* sep)//遍历寻找符合的符号 { while (*sep)//遍历sep字符数组的符号 { if (*sep == *str) return 1; //符合条件返回1,也可

C学习笔记:初识strtok函数

点击查看代码 int main() { char str[] = "192.168.1.168"; char* sep = ".@"; char cpy[1000] = {0}; strcpy(cpy, str); //strtok函数会破坏字符串,所以拷贝拷贝一份 char* ret = NULL; for(ret = strtok(cpy,sep); ret != NULL; ret = strtok(NULL, sep))//for

题解 - CF1715

C. Monoblock 先考虑算出修改前的答案。这明显可以增量法 \(O(n)\)。修改的时候先考虑把这里断开,然后再考虑和左右两边连上(大概三种情况,随便讨论) D. 2+ doors 完了,口胡假了。 显然这个东西可以按位考虑,然后变成01,只用写个2-sat就完事了。 E. Long Way Home 哦,这个玩意好像有决策单

单调栈模板

力扣503 class Solution { public: vector<int> nextGreaterElements(vector<int>& nums) { int n = nums.size(); vector<int> ret(n, -1); stack<int> stk; for (int i = 0; i < n * 2 - 1; i++) {

[Ynoi2016] 炸脖龙 I

题目传送门 已经能过 hack,原因:做快速幂的时候需要微判一下边界。很好奇 lxl 为什么不卡 显然区间加可用线段树做。 然后操作二用扩展欧拉定理,每个 \(p\) 最多递归 \(\log\) 层,类似于 这道题。 \(a^b≡a^{b\mod \varphi(p)+\varphi(p)×[b≥ϕ(p)]} (\text{mod}\ \ p)\) 问题来了,扩

8.19

CF1720D2 题意: 给定序列\(A\),求\(A\)的最长子序列\(B\),满足\(a_p\oplus p+1<a_{p+1}\oplus p\) \(n\leq 3*10^5,0\leq a_i\leq 10^9\) 题解: 枚举两边的值从高位到地位有多少位相等,对于前\(k\)位来说,有: \(a_p\oplus p+1=a_{p+1}\oplus p\) 这样就可以把不等号变成等号,然后两边同时

python基础-函数式编程

概念: 电脑运算视作数学上的函数计算 高阶函数:map,reduce,filter 无副作用,相同的参数调用时钟产生同样的结果 闭包Closure 例子: def cache(func): store = {} # 外部自由变量 @wraps(func) def _ (n): # 闭包函数 if n in store: return store[n] else:

CF512D Fox And Travelling(DP 计数)

CF512D Fox And Travelling 给定一张 \(n\) 个点 \(m\) 条边的无向图,每次选择一个叶子结点并将它和连接它的边删除。 对于每个 \(k\in[0,n]\),问有序选择 \(k\) 个点的方案数。 \(n\le 100\)。 显然如果有环,那么所有环上的点都无法被选择,可以选择的只是一棵棵树。 按照是否有环,可

Linux应用编程之多次打开同一个文件

同一个文件可以被多次打开,譬如在一个进程中多次打开同一个文件、在多个不同的进程中打开同一个文件。 一个进程内多次 open 打开同一个文件,那么会得到多个不同的文件描述符 fd ,同理在关闭文件的 时候也需要调用 close 依次关闭各个文件描述符。 多次打开同一个文件测试代码 1 #inc

交互入门题瞎做

luogu P7045 「MCOI-03」金牌 题目链接 看到题解中介绍了一种用于找出序列中出现次数大于 \(\left\lfloor\dfrac{n}{2}\right\rfloor\) 的摩尔投票法。 先来贺一波题解给出摩尔投票法的具体操作: 我们首先初始化变量 \(\text{ans=}a_1\) , \(\text{cnt=}1\) 。 从此序列的第二个数

静态进程池实现NTP服务器

通过静态进程池实现NTP服务器 例程:server.c #include <stdio.h>#include <stdlib.h>#include <string.h>#include <arpa/inet.h>#include <sys/types.h>#include <sys/wait.h>#include <sys/socket.h>#include <time.h>#include <unist

刷题Day21-动态规划(3)

416. 分割等和子集 01背包问题,注意01背包的内循环从后往前递归,防止一个物品被放入多次 1049. 最后一块石头的重量 II 这是一道值得思考的题 本质上是01背包,但是需要判断的是放进之后,ret是否变化。因为在构建01背包的全过程中,所有的情况都会被考虑到。因此需要时刻注意ret是否更小

C++ wait_for

#include <iostream> #include <future> int mythread() { std::cout << "mythread " << std::this_thread::get_id() << std::endl; std::chrono::milliseconds second(3000); std::this_thread::sleep_for(second); r

C/C++ 使用 openssl 进行 base64 编解码

话不多说,直接上示例代码 std::string Base64Encode(const unsigned char* data, size_t size) { size_t base64_len = (size + 2) / 3 * 4; if (base64_len == 0) { return ""; } std::string ret; ret.resize(base64_len); EVP_EncodeBl