自由的犇儿哥
码龄6年
求更新 关注
提问 私信
  • 博客:20,798
    20,798
    总访问量
  • 34
    原创
  • 84
    粉丝
  • 146
    关注
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
加入CSDN时间: 2019-06-24
博客简介:

BCQCCB的博客

查看详细资料
个人成就
  • 获得10次点赞
  • 内容获得8次评论
  • 获得27次收藏
  • 代码片获得133次分享
  • 博客总排名1,235,501名
创作历程
  • 10篇
    2021年
  • 24篇
    2020年
成就勋章
TA的专栏
  • 崔哥学408
    1篇
  • C与C++
    2篇
  • 快乐学python
    2篇
  • Acwing
    4篇
  • 学习Acwing
    1篇
  • CSP认证
    3篇
  • 计算机组成原理
    1篇
  • Ucore实验
    1篇
  • 动态规划
    2篇
  • leetcode
    3篇
  • 洛谷
    1篇
  • Uva刷题记录
    3篇
  • codeforce
    1篇
  • Java剖析
  • 算法模板
    1篇

TA关注的专栏 11

TA关注的收藏夹 0

TA关注的社区 3

TA参与的活动 0

兴趣领域 设置
  • 网络空间安全
    系统安全web安全安全架构
创作活动更多

『技术文档』写作方法征文挑战赛

在技术的浩瀚海洋中,一份优秀的技术文档宛如精准的航海图。它是知识传承的载体,是团队协作的桥梁,更是产品成功的幕后英雄。然而,打造这样一份出色的技术文档并非易事。你是否在为如何清晰阐释复杂技术而苦恼?是否纠结于文档结构与内容的完美融合?无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

51人参与 去参加
  • 最近
  • 文章
  • 专栏
  • 代码仓
  • 资源
  • 收藏
  • 关注/订阅/互动
更多
  • 最近

  • 文章

  • 专栏

  • 代码仓

  • 资源

  • 收藏

  • 关注/订阅/互动

  • 社区

  • 帖子

  • 问答

  • 课程

  • 视频

搜索 取消

使用BeautifulSoup爬取烂番茄

from pyquery import PyQuery as pqfrom bs4 import BeautifulSoupfrom bs4.element import Tagimport requestsheaders = { 'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36', 'Ref
原创
发布博客 2021.05.15 ·
1299 阅读 ·
1 点赞 ·
0 评论 ·
5 收藏

scanf选择性忽略

scanf提供了一种可以忽略指定位置上的数据读入的方式,这函数真心的牛逼。#define _CRT_SECURE_NO_DEPRECATE#include <iostream>#include <string>#include <cstdio>using namespace std;int main(){ int a, b, c; scanf("%d%*d%d", &a, &c); printf("a=%d, c=%d
", a,
原创
发布博客 2021.05.09 ·
435 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

计算机组成原理

这是一个可以查看的double类型数据具体内存情况的程序#include <stdio.h>int main(){ float f = 8.25; //浮点数在内存中的表示 -8.25=>1000.01=>1.00001x2^3 //1位符号位+8位指数位+23位指数位 //符号位1 指数127+3=130=>1000 0010 尾数00001
原创
发布博客 2021.05.02 ·
181 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

传递闭包模板

传递闭包模板 for (int k = 1; k <= n; k++) for (int i = 1; i <= n; i++) for (int j = 1; j <= n; j++) { g[i][j] = g[i][j] | (g[i][k] & g[k][j]); }请特别注意,对kkk的循环位于三重循环的最外侧g[i][j] = g[i]
原创
发布博客 2021.03.31 ·
188 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

匈牙利算法模板

Acwing#include<iostream>#include<cstring>#include<cstdio>using namespace std;const int n = 510, M = 100100;int e[M], ne[M], h[n], idx;int n1, n2, m;int st[n];int match[n];bool find(int x){ for (int i = h[x]; ~i; i = ne[
原创
发布博客 2021.03.31 ·
158 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

1246

解题思路我们只考虑S=1S=1S=1和S=2S=2S=2的情况,最终可以得到96分的分数。显然,第nnn秒钟序列中的数字分布情况与第n−1n-1n−1秒钟序列中的数字的分布情况是紧密相关的,我们可以根据这一点建立转移矩阵,使用快速幂算法完成矩阵的连续乘法,我们通过矩阵的连乘的方式方式来模拟时间的推移过程。以上思路来自于Acwing#include<cstdio>#include<iostream>#include<cstring>#include<
原创
发布博客 2021.03.27 ·
178 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

MAR与MDR是什么?

Baby StepsWe’re going to take the first step in “building” the CPU. We’re going to introduce two registers: the MAR and the MDR. We assume both are 32-bit parallel load registers.MARMAR is short for memory address register. This register has its output
原创
发布博客 2021.03.09 ·
7908 阅读 ·
5 点赞 ·
0 评论 ·
9 收藏

8259A究竟是做什么的?

做ucore实验的时候遇到了8259A这个概念,在这里整理一下相关的知识从哪里来?这类中断有两个特点,第一是数量很多,毕竟有很多外部设备;第二是它们可以被屏蔽,这样处理器就像是没听见、没看见一样,不会对它们进行处理。所以,这类硬件中断称为可屏蔽中断。尽管不处理中断就会把零件铣坏,但是否允许处理器看见该中断,是你自己的事,这是处理器赋予你的权利。可屏蔽中断是通过INTR引脚进入处理器内部的, 像NMI一样, 不可能为每一个中断源都提供一个引脚。而且,处理器每次只能处理一个中断。在这种情况下,需要一个代理
原创
发布博客 2021.02.24 ·
1188 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

树形背包DP

一道题目,两种解法背包问题一定要按照物品、背包容积、决策的顺序进行遍历。增加背包容积的解法#include <bits/stdc++.h>using namespace std;const int N = 310, M = N * 2;int h[N], ne[M], v[M], idx;int w[N];int dp[N][N];int n, m;void add(int a, int b){ ++idx;v[idx] = b;ne[idx] = h[a]
原创
发布博客 2021.02.21 ·
220 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

权限查询

题目链接这道题一开始我想用map表存储数据,后来才意识到这是一种错误的想法。过多的map会大大增加编程的复杂度。参考题目中给出的最多只有一百个权限、一百个角色和一百个用户名,所以这道题最理想的做法是用遍历穷举的方式一个一个去找。100分代码如下,存在一定的冗余但是并不影响最后的效果。#include <iostream>#include <map>#include <vector>#include<cstdio>#include<queue
原创
发布博客 2020.12.11 ·
248 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

CSP认证有趣的(2013)

题目链接递推的思想我们将每填入一个数时,答案所面临的状态进行划分,实际上可以分为六种状态目前只出现过 2目前只出现过 2 0目前只出现过 2 3目前只出现过 2 0 1目前只出现过 2 0 3目前只出现过 2 0 1 3在位置iii上每填入一个数都意味着状态的一次转移for (int i = 1; i <= n; i++) { a[i][0] = 1;//目前为止只出现过2 情况只有一种 a[i][1] = (a[i - 1][0] + 2 * a[i - 1][1]
原创
发布博客 2020.12.10 ·
182 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

走廊泼水节

最小生成树问题题目链接题解链接解决这道题的思想体现了对Kruskal算法的深刻理解。每当我们从排序好的边的数组中取出一条边准备连接时,这条边一定比它两个端点所对应的联通图的边集合中最小的边还要小。。基于这样的思想我们就能够求解出这道题。这其中有一点需要注意的是,原题中所说的添加的新的边是并不存在的。这也就是说这条添加的边的长度是我们可以人为随意决定的#include<iostream>#include<map>#include<vector>#inc
原创
发布博客 2020.11.17 ·
165 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

学习使用python的zipfile和os

import osimport os.pathimport zipfiledef YZQHW(inad, outad, id=None, hwid=None): ''' 将每次的作业写到同一个文件A中,每一个题目对应一个函数 :param inad:要读取的文件A的地址 :param outad: 输出压缩文件的地址 :param id: 你的学号 :param hwid: 第几次作业 :return:没有返回值 ''' fi
原创
发布博客 2020.11.03 ·
318 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

第K条最小指令

第K条最小指令题目链接这道题帮我们重新回顾了一下动态规划求解排列组合问题的过程。并给出了不错的思路求解类似问题。class Solution {public: string kthSmallestPath(vector<int>& destination, int k) { int h = destination[1]; int v = destination[0]; // 预处理组合数
原创
发布博客 2020.11.02 ·
229 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

洛谷(深入理解Floyd算法)P1119 灾后重建

#include<iostream>#include<vector>#include<algorithm>#include<cstring>#include<queue>#include<list>#include<bitset>#include<map>#include<limits> #include<string>#include<set>us
原创
发布博客 2020.10.06 ·
313 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

给定行和列的和求可行矩阵

这道题在刘汝佳的书上是用网络流做的,但是数据量一大就会超时,使用贪心的思想来做就会非常简单class Solution { public: vector<vector<int>> restoreMatrix(vector<int>& rowSum, vector<int>& colSum) { int row = rowSum.size(); int col = colSum.size();
原创
发布博客 2020.10.04 ·
522 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Uva10003切割木棍

一开始我是这么做的int main(){ freopen("sb.txt", "r", stdin); int t; while (scanf("%d",&t)&&t) { //t代表木棒的长度// memset(dp,) //fill(dp, dp + MAX * MAX, 0x3f3f3f3f); memset(dp, 0x3f3f3f3f, sizeof(dp)); int sum; scanf("%d", &sum); f
原创
发布博客 2020.10.02 ·
205 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Uva12563(一维01背包问题水题)

Uva 12563#include<iostream>#include<cstdio>#include<vector>#include<algorithm>#define MAX (180*50+678+100)using namespace std;int nums[MAX+1];int main(){ freopen("sb.txt","r",stdin); int count; cin >> count; int g
原创
发布博客 2020.10.01 ·
159 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

codeforce B. Two Arrays

题目链接题目大概是这样说的这道题如果使用位运算爆搜的方法一定会超时。实际上,组成unluck数的只有两个数,使用键值对的方式就能够记录当前的数组中是否出现了与这个数可以组成unlucky数的数字。#include<iostream>#include<vector>#include<algorithm>#include<numeric>#include<map>using namespace std;int main(){
原创
发布博客 2020.09.28 ·
512 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Uva10285最长的滑雪记录

这真的是一道动态规划题吗?感觉时间复杂度很高·····#include<iostream>#include<cstring>#include<algorithm>using namespace std;#define MAX 10005// int Map[105][105];int count1[MAX];int R, C;int dx[] = { 0,-1,0,1 };int dy[] = { 1,0,-1,0 };int DP(int
原创
发布博客 2020.09.22 ·
204 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多