自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(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 proj2 phrase1

代码见我的github该文件夹下所有StdDraw内容均已被注释。

2022-04-15 19:40:23 421

原创 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",&amp

2021-07-16 22:34:29 66

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除