课堂测试,要求写出一个可以自动随机生成自定义数量、格式、是否带乘除、是否有括号运算的小学四则运算题目,老师出题时边给我们理了一下思路,将这一整个题分成三部分完成,首先要求生成数量固定数量的题目,相对于直接实现后面这部分是较简单的: 首先对于random函数,static double random
昨天是我们正式上Java的第一天,老师昨天主要为我们讲了3个板块的内容:大道至简——编程精义、Java语法基础、Java课后实践。首先老师让上一次课堂测验的优秀同学展示之间的代码,通过优秀同学的代码我明白了大道至简的编程思路:分解、模块识别、抽象、算法。在写一道编程题
问题一:从测试中看不足 1、JAVA的基本运行单位是类 2、类中由类变量和类方法共同组成 3、变量的类型相互之间存在可以转换的关系,具体来说,可以分为以下几种情况: 1、(byte、short、char)-int-long-float-double,从低级到高级的排序,数据类型可以直接由低级向高级转换 举例:低级向高级:byte
第二周学习笔记 20201303张奕博 I/O 库函数 I/O库函数与系统调用 系统调用函数 open( ):打开和创建文件 使用例子int open(const char * pathname, int flags, mode_t mode); read( ):读文件 read[1] (int fd, void *buf, size_t count); write( ):写文件 write (int fd, co
函数 函数是一组一起执行一个任务的语句。每个 C 程序都至少有一个函数,即主函数 main() ,所有简单的程序都可以定义其他额外的函数。 定义函数 函数格式 return_type function_name( parameter list ) { body of the function } 返回类型:一个函数可以返回一个值。return_typ
题目链接:https://www.luogu.com.cn/problem/P3354 题解: 考虑树形dp 设\(f[i][j][k]\)表示考虑到 i 点,j 是i的祖先中与i最近的伐木场,i及子树中共有 k 个伐木场的最小代价 我们发现,这样设状态无法表示 i 是否有伐木场这个条件,因此钦定 f[][][] 表示 i 没有伐木场,g[][][]表示有 转移
题目: 有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。 解题思路: 利用数组的“0”和“1”的数值表示玩家存在与不存在的两种状态,对数组进行多次重复循环,每次循环到最后一位数组元素后又从下标0开始循
Java基础学习笔记 当前进度:P59 Java 教程 | 菜鸟教程 常用DOS命令 dir:列出当前目录下的文件以及文件夹 md:创建目录 rd:删除目录 cd:进入指定目录 cd..:退回到上一级目录 cd\:退回到根目录 del:删除文件 exit:退出命令行 Java环境配置 Hello World class HelloWorld{ //类名
代码 #include<bits/stdc++.h> #define int long long #define pdd pair<double ,double > using namespace std; const int N=1e5+10; const int mod=1000000007; int n; pdd q[N]; bool used[N]; int stk[N]; pdd operator-(pdd a,pdd b){ return {a.first-b.
动态规划 \(\tt{}0/1\) 背包 \(N\) 件物品中选取,使得选取物品总体积不超过 \(M\) 的前提下,使得物品的价值总和最大。每种物品一件, \(\mathcal{O}(N*M)\) 。 int n, m, dp[N]; int v[N], w[N]; void Zero_bag() { cin >> n >> m; for (int i = 1; i <= n; ++ i) cin >> v[i
\(\tt STL\) 与库函数 后继 \(\tt lower\_bound、upper\_bound\) lower 表示 \(\ge\) ,upper 表示 \(>\) 。使用前记得先进行排序。 //返回a数组[start,end)区间中第一个>=x的地址【地址!!!】 cout << lower_bound(a + start, a + end, x); cout << lower_bound(a, a + n, x) - a; //
杂类 与、或、异或 运算 运算符、数学符号表示 解释 与 &、and 同1出1 或 |、or 有1出1 异或 ^、\(\bigoplus\)、xor 不同出1 一些结论: 对于给定的 \(X\) 和序列 \([a_1,a_2,…,a_n]\) ,有:\(\pmb {X=(X \&a_1)or(X\&a_2)or…or(X\&a_n)}\) 。 原理是 \(and\) 意味着
就喜欢找这种紫题来做,一看,排列组合,就想到了打表。 正如楼上的题解所说,OEIS是个好东西,从中找出一串序列,然后打个表,一道紫题就轻松地AC啦!! 0, 1, 1, 5, 11, 36, 95, 281, 781, 2245, 6336,18061, 51205, 145601, 413351, 1174500, 3335651,9475901, 26915305, 76455961, 217172736,61
多项式与几何 快速数论变换 \(\tt NTT\) \(\mathcal O(N * logN)\) 。 namespace poly{ const int M = 998244353,G = 3,Gi = 332748118; const int N = 5000000; int n,m; int res,ans[5000005]; int limit = 1; int L; int RR[5000005]; LL a[N
Problem StatementYou are given a simple undirected graph with $N$ vertices and $M$ edges. The vertices are numbered $1, \dots, N$, and the $i$-th $(1 \leq i \leq M)$ edge connects Vertex $U_i$ and Vertex $V_i$. Find the number of tuples of integers $a
从今天开始,我们就要初涉算法,请大家做好心理准备嗷! 递归 递归这个名词大家估计都耳熟能详吧,那咱们跳过吧 但是我们还是要好好学习递归的,因为递归对于我们后面学习深搜、二叉树是非常重要的。 如果你还没听说过递归,那么我告诉你,你可以把递归理解成一种特殊的循环。还记得小时候听过
1.安装PIL pip install Pillow 2.python程序 import time,datetime from PIL import ImageGrab import os d1 = datetime.date.today() #获取当前时间 end_h = 16 #结束时间 end_m = 25 #结束分钟 base_dir = "G:/test/printScreen/picture" #图片保存地址 startTime
1.访问指针 #include <iostream> #include <windows.h> #include <string> using namespace std; int main() { int room = 2; int room1 = 3; int* p1 = &room; int* p2 = p1; int* p3 = p1; printf("room的地址:%d\n"
Petrozavodsk Summer 2022. Day 1. Welcome Contest 是不是又开新坑了,毛营我来了! 挑几道自己会的 & 有意思 的题写题解 QwQ D - Double Sort 给定 \(n,m(n\leq m)\),随机一个值域在 \([1,m]\) 且数字不重复的的长度为 \(n\) 的序列 \(a_i\)。 令 \(a_0=0\),将 \(a\) 数组排序,差分,再
STL学习笔记 参考文档: https://cplusplus.com/reference/ https://zh.cppreference.com/w/首页 https://docs.microsoft.com/en-us/cpp/standard-library/cpp-standard-library-reference?view=msvc-170 https://github.com/huihut/interview 总体总结 容器分类 容器复合
import java.util.Scanner;import java.util.Random; public class news { public static void main(String[] args) { System.out.println("请输入总题目数量:"); Scanner sc = new Scanner(System.in); int n = sc.nextInt(); System.out.pr
来点基础的练习题吧,看见CSDN这类基础的代码不多 //正三角形 void ex03(){ int i,k=0, rows, space; printf("请输入三角形的层次:"); scanf("%d",&rows); for(i=1; i<=rows; i++,k=0){ //k值每次循环都要重新初始化 for(space=1; space<=rows-i; space++){ printf(" ");
双元法本质上是寻得一个或一组平方式. 其实只有两种情况: 要么 \(p^2+q^2=1\), 要么 \(p^2=q^2+1\). \(1.\quad\) \[\int \sqrt{1+x^2}\text dx \]利用 \[\int y\text dx=\frac12\int (y\text dx+x\text dy)+\frac12(y\text dx-x\text dy) \]就可以了. \(2.\quad\) \[\int\sqrt{\f
目录3.3 栈(Stack)ADT3.3.1 栈模型3.3.2 栈的实现栈的链表实现栈的数组实现3.3.3 应用 3.3 栈(Stack)ADT 3.3.1 栈模型 栈是限制插入和删除只能在一个位置上进行的表,该位置是表的末端,叫作栈的顶(top)。对栈的基本操作又Push(进栈)和Pop(出栈),前者相当于插入,后者相当于删除最后插入的元
常用数据类型和bytes数组互转 简介 常用于tcp和udp传输,通过约定协议进行数据交互 示例 1、在Python中一般用struct库进行常见的转换,主要对数字进行处理,包括int、float等 import struct # int转换为bytes s = 1 s = struct.pack('i', s) # 再将bytes转换为int s = struct.unpack(