- 博客(25)
- 问答 (7)
- 收藏
- 关注
原创 Codeforces B. Peculiar Movie Preferences
题目B. Peculiar Movie Preferencestime limit per test2 secondsmemory limit per test512 megabytesinputstandard inputoutputstandard outputMihai plans to watch a movie. He only likes palindromic movies, so he wants to skip some (possibly zero) scenes t
2022-05-09 13:33:23
326
原创 决策树基础原理介绍
概览不知道为什么图床加载不出,请看我的cnblog地址cnblog分类问题eg:给定了一个餐厅的数据,决策是否需要等待;[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KKmz9lRb-1651159685719)(http://127.0.0.1/uploads/1651021119304785669Pasted_image_20220425111432_1.png)]首先将特征属性split,假如先从Res开始,将value是Yes的分成一组,value是No的分成
2022-04-25 21:18:46
954
原创 CS61b笔记 2.1
1.海象之谜一节知识点与题目 代码: 1 2 3 4 5 6 7 8 9 public static class Walrus { public int weight; public double tuskSize; public Walrus(int w,...
2022-04-22 17:32:57
596
原创 CS61b proj1a
得分46.25有一个点的bug不会修(希望大佬带我),style没有注意。1.LinkedListDeque.javapublic class LinkedListDeque <T>{ private class staffnode{ private T item; private staffnode pre; private staffnode next; private staffnode(T x) {
2022-03-13 18:31:51
721
原创 图的深度遍历 (邻接矩阵)
知识讲解:图的遍历分为两种,深度遍历与广度遍历。这里讨论深度遍历。以上图为例讨论图(图片来自《算法笔记》)的深度遍历:设图形的顶点数为n。先从顶点v0开始,用一个数组vis[n]来表示该顶点是否被访问,如果未被访问,vis[顶点编号]=0,否则为1.从v0开始访问,则vis[0]=1,v0可以连通v1与v2,即下一个访问的顶点是v1(遍历二维数组时1比2先访问到),再更新vis数组,然后再从v1访问v3,到v3时发现没有办法继续访问了,再退回上一个顶点v1(v1仍存在未被访问的岔道),从v1访问没有
2022-02-25 12:58:41
2273
原创 每日一题:codeforces题解(Peculiar Movie Preferences)
题目B. Peculiar Movie Preferencestime limit per test2 secondsmemory limit per test512 megabytesinputstandard inputoutputstandard outputMihai plans to watch a movie. He only likes palindromic movies, so he wants to skip some (possibly zero) scenes t
2022-02-11 10:41:00
524
原创 算法笔记——贪心算法
贪心算法就是通过局部最优达到全体最优的目的。下面用两道习题来说明贪心算法。贪心算法一般难以证明,所以在想到某个策略,又无法举出反例的情况下就可以采用贪心算法。例题1:暑假到了,小明终于可以开心的看电视了。但是小明喜欢的节目太多了,他希望尽量多的看到完整的节目。现在他把他喜欢的电视节目的转播时间表给你,你能帮他合理安排吗?输入输入包含多组测试数据。每组输入的第一行是一个整数n(n<=100),表示小明喜欢的节目的总数。接下来n行,每行输入两个整数si和ei(1<=i<=n),表示
2022-02-06 16:34:53
417
原创 CCFCSP 小明种苹果(续)100分
题目链接#include <stdio.h>int main(){ int n; scanf("%d",&n); int i,j; long long sum=0,loss=0,flag,conti[1005]={0},end=0,t,con=0; for(i=0;i<n;i++){ int m; scanf("%d",&m); flag=0; long long s=0; int a; for(j=0;j<m;j++){
2021-10-25 22:40:11
108
原创 CCFCSP 回收站选址 (100分)
题目链接思路:题干中已知坐标的值最高可达10^9,所以用二维数组索引显然会引发运行错误,再加之有负数,用数组存储的方法也不可取。这里才用结构体,根据x的值将存储有坐标和得分信息的结构体进行二级排序,先判断四周是否均有垃圾,再考虑对角线的情况。#include <stdio.h>#include <string.h>#include <stdlib.h>#include <math.h>struct node{ long x; long
2021-10-24 13:59:20
195
原创 CCF CSP 报数(100分)
题目链接满分代码#include <stdio.h>int if_pass(int n){ if(n%7==0) return 1; while(n){ if(n%10==7) return 1; n=n/10; } return 0;}int main(){ int n; scanf("%d",&n); int i=1; int x1=0,x2=0,x3=0,x4=0; long long s1,s2,s3,s4,s=0; for(i=1;s&l
2021-10-24 13:49:47
159
原创 CCFCSP 稀疏向量 100(分)
题目链接这道题如果采用数组索引的方法会导致运行错误,采用数组索引代码运行错误60 分。#include <stdio.h>#include <stdlib.h>#include <string.h>long int a[600005]={0};long int b[600005]={0};int main(){ long int n,x,y; scanf("%ld %ld %ld",&n,&x,&y); long i,j=0
2021-10-23 12:21:18
199
原创 CCFCSP称检测点查询 100分
题目链接思路很简单,就是一个排序问题,采用结构体数组;但是必须注意,“相同距离以排在前面的优先”,如果偷懒直接用qsort会只得70分哦。排序采用冒泡排序的优化方法#include <stdio.h>int main(){ int n; scanf("%d",&n); int x,y; scanf("%d %d",&x,&y); int i; struct node{ int w; long int s; }a[205],temp;
2021-10-18 21:37:21
192
原创 CCFCSP 风险人群筛查 100分
题目链接这道题思路很简单,就是在输入每一个人的坐标时,每一个坐标都判断一下在不在高风险范围内,但注意题目对“逗留“的定义为连续在风险区停留了n时刻。所以在输入的坐标不在风险区时,要把前面累计的在风险区的时刻数清零重新计算。前面所计的时刻数存储到另一个临时变量里,每一次清零都要将之前的累计数字与新要存入的数字比大小,只存入最大的即可。注意:如果一直处于高风险区,那么temp2 将一直为零,所以鉴于我们之后使用temp2作为判断依据,所以temp2要再与temp1比一次大小。#include <st
2021-10-18 21:30:57
182
原创 CCFCSP 期末预测之最佳阈值 100 分
#include <stdio.h>#include <string.h>#include <stdlib.h>int cmp(const void *a,const void * b){ return (*(int*)b-*(int*)a);}int main(){ int n,i,x,y; scanf("%d",&n); int a[n+5],b[n+5]; //memset(a,0,sizeof(a)); //memset(b,0,s
2021-10-17 15:32:19
221
原创 CCFCSP非零段划分
题目链接这道题可以将题目模拟为海水与岛屿的问题;p为海水深度,假设数组中一个数比其左边与右边的数都大,那么它就是一个峰,反之则是一个谷。如果p是10001,那么所有地区都在海平面以下,将p慢慢减小会发现逐渐由有山峰露出,露出的峰数目最多的时候即为非零段数目最多的时候。特别注意: 如果出现了类似于1 2 2 1这种相连的情况,一定要将相连续的2变为1 个,即变为1 2 1,如果不变化,程序会认为此处没有峰,但事实上1 2 2 1在2 2 处形成的平台就是峰。#include <stdio.h&
2021-10-17 13:19:17
1243
1
原创 P7893 『JROI-3』黑白棋 (洛谷月赛div2)
题目描述白在和森精种玩黑白棋,但黑白棋的规则有所改变。有 nn 个黑白棋子,第 ii 个棋子编号为 ii。棋子初始全为黑,游戏中,仅由白一人操作,白希望尽可能多的把棋子变成白色。白要求第 kk 个棋子和第 k ×p 个不能同时变成白色。白共玩了 TT 次,每次白想知道最多能把多少棋子变成白色。每次游戏独立。为避免混淆,加粗的白是人名。输入格式第一行一个正整数 TT,表示数据组数。下面 TT 行每行两个整数 n,pn,p,同题意。输出格式共 TT 行,每行一个正整数,表示白最多能把多少枚棋
2021-10-12 21:17:36
978
原创 P2440 木材加工 题解
这是一道二分答案的题目,根据题目已知,我们需要找到最大的木条长度‘,使所有木头按照这个长度等分可以达到要求的木段数量,当mid所对应的木头段数少于要求的,将left=mid-1,否则就将right=mid+1;这道题如果稍不注意就会RE,注意题目说:如果连 1cm 长的小段都切不出来,输出 0。所以可以在输入时就开始求木段长度和,如果木段长度和除以要求的木段数已经大于0了,那么flag就为1,如果flag=0那么就直接输出0,跳出循环。#include <stdio.h>int main
2021-09-21 22:05:29
316
原创 P1678 烦恼的高考志愿
这道题采用了二分的方法,这里容易WA的是二分的部分,这里和简单的二分查找不一样,这里二分的目的是要找出比学生成绩高的,离学生成绩最近的一个值,所以当a[mid]=b[i]的时候,要left=mid+1,将比学生成绩高的最近一个成绩找出后,再在该成绩的左右查找是否有更接近的成绩。(该方法无需再讨论a[mid]=b[i]时的跳出情况)#include <stdio.h>#include <stdlib.h>#include <math.h>int cmp(cons
2021-09-19 09:48:07
392
原创 洛谷 P1024 [NOIP2001 提高组] 一元三次方程求解(二分法)
这是一道关于二分法求根的练习题目。#include <stdio.h>#include <math.h>double a,b,c,d;double sum(double x){ double s; s=a*x*x*x+b*x*x+c*x+d; return s;}int main(){ scanf("%lf %lf %lf %lf",&a,&b,&c,&d); int i; for(i=-100;i<=100;i++
2021-09-15 16:02:24
924
原创 二分答案例题 洛谷P1873 [COCI 2011/2012 #5] EKO / 砍树
这是一道关于二分答案的例题;这里与二分查找不同的是,二分查找的目的为找到即可,但二分答案(以本题为例)所求的是满足条件的最大值。二分查找找到即可跳出循环,二分答案需要找到满足的上(或下限),所以在找到一种情况后,需要继续向上(下)限探索,不可随意跳出循环。#include <stdio.h>#include <stdlib.h>int cmp (const void*a,const void*b){ return (*(int*)a-*(int*)b);}int ma
2021-09-12 16:55:51
532
原创 洛谷P2249 【深基13.例1】查找
洛谷P2249 【深基13.例1】查找最后一个点超时问题:这道题采用了两次二分法;主要的二分法可以想到,但是找最小下标时也要用二分法容易忽略。如果采用代码块中的注释for循环最后一个点就会超时,整体复杂度就会变大比如说如果数列全为1,时间复杂度就会退化成o(1)#include <stdio.h>#include <stdlib.h>int main(){ int n,m; scanf("%d %d",&n,&m); int a[n+5],i;
2021-09-08 17:15:48
1709
原创 Python基础:字典( 上)
字典:字典是一系列键值对,一个键对应一个值。字典采用{}表示;例如classmate_0={‘gender’:’girl’, ’age’:5},这里有两个键值对,’color’,’age’都是键,均有所对应的值black,5.访问字典中的值:首先需要定义字典;(如上文定义的的新同学),如果要统计同学年龄,可以采用如下方法访问:classmate_0={'gender':'girl','age':5}new_age=classmate_0['age']print ("New classmate'
2021-08-24 17:53:31
122
原创 PHP文档打开
存储数据:方式:文件;数据库。平面文件:(一般指txt);PHP的文件操作:1.打开文件;使用fopen打开文件:eg:fp=fopen("fp = fopen("fp=fopen("document_root/…/orders/orders.txt", ‘w’);一般为两个参数:第一个参数是要打开的文件,。。。意为文档根目录的父目录;指定路径:采用(/)(windows系统也可以采用\),后一个参数w意为文件以“只写”方式打开,先前采用的w,输入新内容会覆盖之前的旧内容(只允许存储一
2021-08-14 19:40:44
211
原创 PAT 1004 Counting Leaves 结构体法
PAT 1004 Counting Leaves 结构体法#include <stdio.h>int main(){ struct node{ int c;//子节点数目; int la;//该节点在第几层; int v;//该节点是否被访问; int str[100];//子节点的名称; }cl[105]; int n; scanf("%d",&n); if(n==0)return 0; int m; scanf("%d",&
2021-07-16 22:34:29
66
空空如也
吴恩达ex1的多变量梯度下降为什么错误?
2022-03-24
关于#leetcode#的问题,如何解决?(语言-c语言)
2022-03-06
关于#段错误#的问题,如何解决?(语言-c语言)
2022-02-25
pta1014 Waiting in Line 测试点2,4,5不过
2021-10-12
求问这道题为什么无法正常输出?
2021-05-13
请问leetcode上19题我设置了哑节点为什么还要讨论头节点才能过?
2021-04-25
TA创建的收藏夹 TA关注的收藏夹
TA关注的人