ICode9

精准搜索请尝试: 精确搜索
  • 严格次小生成树2022-08-05 00:03:27

    [BJWC2010] 严格次小生成树 大体思路 不能算题解吧,就是简简单单记录一下,防止自己再忘了。 21 年暑假才学 LCA 时做过一下,但是一直 90。现在 22 年终于过了。 次小生成树一定只有一条边与最小生成树不同,具体证明看别的博客吧。 于是在求出最小生成树以及构成的树边之后可以枚举每条

  • 八一特别行动2022-08-03 08:35:46

    题目背景:(为啥放图片你可以猜猜) A. 南 设\(g_i\)表示有\(i\)种武器,要拿到\(n\)种的期望花费 根据拿到与已有武器种类是否相同的概率,显然有 \(g_i = \frac{i}{n}g_i + \frac{n - i}{n}g_{i + 1} + cost\) \(cost\)为该次购买对总期望的贡献,每次购买会令后面所有购买花费\(+1\),那么

  • c语言贪吃蛇2022-08-02 16:31:40

    贪吃蛇 #include <windows.h> #include <stdlib.h> #include <time.h> #include <stdio.h> #include <string.h> #include <conio.h> #define N 21 int apple[3]; char score[3]; char tail[3]; void gotoxy(int x, int y) //Êä³ö×ø±ê { C

  • 记录 Go 的参数传递的一个坑2022-08-02 15:37:15

    起因 是我在复习二叉树, 写一个很基本的 中序遍历的代码的时候, 结果切片输出的时候, 输出的结果非常的怪异. 后面我参考了别人的代码, 发现对结果数组的修改的传参都是基于指针的. 但是我又奇怪, golang 里面的 slice, map, function 还有channel等不都是数值传递吗? 我使用appen

  • 刷题Day19-动态规划(1)2022-08-02 01:02:01

    509. 斐波那契数 func fib(n int) int { dp := make([]int,3) if n == 0 { return 0 } dp[1] = 0 dp[2] = 1 for i := 2; i <= n; i++ { dp[0], dp[1], dp[2] = dp[1], dp[2], dp[1] + dp[2] } return dp[2] } 70. 爬楼梯 fu

  • 选择排序2022-07-31 19:01:13

    选择排序就是每次从数组未排序的子数组里选择最小的一个放到子数组的首位 public void sort(int[] arr) { int len = arr.length; for (int i = 0; i < len - 1; i++) { System.out.println(Arrays.toString(arr)); int minIndex = i; for (int j

  • 混泥土教学(模拟)2022-07-31 02:04:22

    https://www.luogu.com.cn/problem/P6686 记录每个长度的棍子的个数 枚举每个长度,作为腰长 再遍历到腰长两倍以内的,这些累加进去得到满足条件的底的个数 第三步不需要从头遍历,累计的次数k也不需要归0,因为小的腰长对应的底边的个数一定在大的腰长对应底边个数以内,就不需要重复计算

  • KMP2022-07-31 02:00:37

    https://www.luogu.com.cn/problem/P3375 获得next数组(最长公共前后缀) 用类似的方法获得进行kmp操作 每次匹配成功匹配下一个时 有(j=next[j]) #include <bits/stdc++.h> using namespace std; #define MAX 10000000 char a[MAX], b[MAX]; int nexts[MAX]; int len_b, len_a; voi

  • 删数问题(一个数删去几个位上的数后最小)2022-07-31 01:31:46

    https://www.luogu.com.cn/problem/P1106 将字符串中出现递减的数删去(s[i]>s[i+1])此时删去i位置的那个比较大的数 使用erase函数快 循环操作n次结束 #include <bits/stdc++.h> using namespace std; string s; int n, min_idx; char min_first; int main() { cin >> s;

  • AGC005D 做题体验2022-07-31 01:04:08

    题目链接 本人再次认为是一道不错的题目,可能是我菜。 判定可行解 首先假定我们已经得到了 \(a\) 和 \(b\) 这两个序列,我们如何判断是否是有解的。 从图论的角度去分解这个问题,我们设当前序列为 \(c\) 。 当 \(c_i=c_j\) 时,我们连一条 \((i,j)\) 双向边,代表第 \(i\) 位和第 \(j\)

  • [LC593]有效的正方形-Valid Square2022-07-30 00:31:08

    题目描述 给定2D空间中四个点的坐标 p1, p2, p3 和 p4,如果这四个点构成一个正方形,则返回 true 。 点的坐标 pi 表示为 [xi, yi] 。输入 不是 按任何顺序给出的。 一个 有效的正方形 有四条等边和四个等角(90度角)。 链接:https://leetcode.cn/problems/valid-square 基本思路

  • C++memcpy和memcpy_s2022-07-29 19:35:27

    memcpy_s是memcpy的安全用法。_CRT_MEMCPY_S_VALIDATE_RETURN_ERRCODE的用处是做安全校验,如果不满足就返回异常码,其实底层还是memcpy的使用。   char* s = new char[3]{'1','2' ,'3' }; char* d=new char[12]; ::memcpy(d, s + 0, 1);// d 1 ::memcpy(d, s + 1, 2)

  • LeetCode482022-07-28 09:00:56

    https://leetcode.cn/problems/rotate-image/ class Solution { public void rotate(int[][] matrix) { int len=matrix.length; int[][] newMat=new int[len][len]; for(int i=0;i<len;i++){ for(int j=0;j<len;j++){

  • 记录一次生产死锁2022-07-28 00:35:03

    杂谈 入职新公司三个月了,这三个月可以说充实到爆,每天忙到忘记吃饭,忙到忘记回复女朋友消息,忙到忘了自己做了啥,还有啥没做。来到电商公司,确实是感受到了业务的复杂,写代码的谨慎,很多想法也可以大胆的去实现,也学到了很多性能优化的思路。虽然不比较累,但总算是不再平庸!年轻人嘛!熬过来就

  • dp专题2022-07-27 19:05:28

    P1280 尼克的任务 链接:https://www.luogu.com.cn/problem/P1280 本题的关键在于顺推不好做 想着要倒推 想着要统计开始的时间点 排序是为了消除后效性!!!!是个非常好的模型 #include<iostream> #include<algorithm> using namespace std; long int n,k,sum[10001],num=1,f[1000

  • pygame五子棋再探索2022-07-27 15:31:20

    这次继续探索pygame的五子棋实现,和之前不一样,这次我稍微研究了一下 用pyqt调用pygame有点难,下棋的时候容易报错 报错:-1073740791 (0xC0000409) 而不用pyqt,只用pygame就少了很多麻烦 使用pyqt的部分代码: ` from PyQt5 import QtCore, QtGui, QtWidgets class Ui_MainWindow(object)

  • 批量插入数据库2022-07-27 10:35:46

    import pandas as pd from sqlalchemy import create_engine path="C:\\Users\\Administrator\\Desktop\指标\\" data=pd.DataFrame() flile=os.listdir(path) list_len=len(flile) for i in range(list_len):     data_exce = pd.read_csv(path + flile[i]

  • 二分查找面试算法题2022-07-27 00:03:18

    1.二分查找(有序数组) https://blog.csdn.net/qq_63918780/article/details/122527681 1 #include <stdio.h> 2 #include <string.h> 3 4 int func(int *a,int j,int x) 5 { 6 int len = j - 1,i = 0,min; 7 while(i<len) 8 { 9 min = (

  • 十大排序2022-07-26 19:35:43

    十大排序 冒泡排序 #include<stdio.h> void bubble_sort(int arr[],int len){ int i,j,temp; for(i=0;i<len-1;i++){ for(j=0;j<len-1-i;j++){ if(arr[j]>arr[j+1]){ temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } } } } int main(){ int

  • 文件的读写2022-07-25 23:00:29

    public void copyFile(String source, String dest) throws Exception { // 构建文件输入出流。 InputStream is = new FileInputStream(new File(source)); OutputStream os = new FileOutputStream(new File(dest)); // 构建 InputStreamReader, OutputStreamWriter Reader read

  • 2022牛客暑期多校训练营12022-07-24 20:00:40

    ABCDEFGHIJK A是一个贪心,首先发电站和电塔其实本质上是差不多的,问题转化成n个区间覆盖问题,不相邻的区间用电线连一连的问题,sort后On的扫一遍,计算答案即可。       #include<bits/stdc++.h> using namespace std; typedef long long ll; int read() { int x;scanf("%d",&

  • 企业真题训练-Zoom2022-07-24 17:02:29

    1、斐波那契数列  非递归巧妙解法 class Solution: def fib(self, n: int) -> int: if n<2: return n a,b=0,1 for i in range(2,n+1): a,b=b,a+b return b   2、旋转字符串   关键:旋转后前半部分和旋转前后半

  • python 实现冒泡排序2022-07-23 02:00:59

    例如给定一个列表a,用冒泡排序法,将a里面的元素从小到大进行排序 实现思想: 1.确定列表表长(元素个数),用于确定最多循环次数,为len(list)长度 2.确定列表内第一次循环,第一个元素的最多比较次数,为len(list) -1 - i,i为循环次数变量 3.设置排序标记位,sort_sign,

  • day262022-07-22 22:32:23

    剑指 Offer 67. 把字符串转换成整数  注意一下出界的情况 1 class Solution { 2 public: 3 int strToInt(string str) { 4 int len = str.size(); 5 if(len == 0) return 0; 6 int i = 0; 7 while(str[i] == ' ' && i < len) i ++

  • 真.游戏2022-07-22 20:14:24

    题目:矩阵取数游戏P1005 [NOIP2007 提高组] 矩阵取数游戏 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 这道题没啥好说的 区间dp+高精 懒人的话也可以写int128(比如本蒟蒻QAQ) 状态转移方程为f[i][j]=max(2f[i+1][j]+2a[i],2f[i][j-1]+2a[j]) I'll speak no more nonsense. 代码: (

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有