自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 python class self传递奥秘

由于最近几天在学习深度学习算法,对class中的self参数是如何传递感到惊奇和疑惑。 在深度学习算法中运用了大量class,这样是为了模块化方便进行管理,对于其中的参数和梯度的传递并没有出现传统的用return去传递参数和梯度。经过几天写简单的class一遍遍尝试我发现,在class中,形如 self.b = a 或者 self.c = [a,a,a],或者 d = self.b 这些,他们传递的是地址。1、self.b得到了a的地址, 如果self.b + 1, 那么如果你要打印a你会发现a突然+1

2021-12-12 11:03:26 1539

原创 P1147

题目对一个给定的自然数M,求出所有的连续的自然数段,这些连续的自然数段中的全部数之和为M。例子:1998+1999+2000+2001+2002 = 10000,所以从1998到2002的一个自然数段为M=10000M的一个解。#include<stdio.h>#include<math.h>//problem: luogu p1147//author: ZhaoyangFan//date: 2021.11.21int main(){ int

2021-11-21 18:34:24 408

原创 P1145

题目:n 个人站成一圈,从某个人开始数数,每次数到 m 的人就被杀掉,然后下一个人重新开始数,直到最后只剩一个人。现在有一圈人,k 个好人站在一起,k 个坏人站在一起。从第一个好人开始数数。你要确定一个最小的 m,使得在第一个好人被杀死前,kk个坏人先被杀死。思路:1、思虑良久没有想到什么简便解法,这里使用暴力求解。虽然使用暴力求解,也需要剪掉一些不必要的数据。2、由于不能杀掉好人,m>k。如果m<=k,第一次数数好人就要死去一个.3、死亡一个人,总人数减一,当前死亡人后面的人idx都

2021-11-21 16:55:35 269

原创 洛谷 p1125

1、这题比较简单,考虑字符的ascall码来做这题,可以用数组来存字符个数,具体看代码#include<iostream>#include<math.h>#include<string.h>using namespace std;int pd(int n){ if(n==1 || n==0) return 0; for(int i=2;i<=sqrt(n);i++) if(n%i==0)

2021-10-17 15:25:12 180

原创 洛谷 1109

1、题目很简单,就是满足所有分组要在L和R的区间中2、把所有的人数加起来,如果小于L x n 或者 大于R x n,明显不可以在区间内。排除这两种可能剩下的就是可以的了。3、剩下的我们只需要考虑,如果人数小于L,要补充多少到达L,如果人数大于R,要减少多少到达R。很明显我们先用多出来的人数去补充缺少的人数,再考虑用区间内的人数去补充缺失的人数或者把多的人数补充到区间内去。仔细想一下交换次数就是max(缺少的人数,多余的人数)。#include<iostream>using namesp

2021-10-15 15:19:33 60

原创 洛谷 p1105

1、题目的意思:一平台掉落它的左右两端点掉落会在哪个平台上。如果某高度有两块或更多平台,恰好一平台一个断点刚好掉落在上面,我们只算编号靠前的平台。2、由于我们输入数据时,高度不是排序输入的,而是杂乱的。如果我们把输入的数据按高度进行降序,这样是不是更好做了。3、平台A左端点掉落在平台B的条件是:A左端点大于B左端点,但小于B右端点。 同理平台A右断点掉落在平台C的条件是:A右断点大于B左断点,但小于B右断点。代码#include<iostream>using namespace st

2021-10-14 21:51:52 230

原创 洛谷 p1094

题目解法是用贪心解法,为什么要用贪心解法,请看这:heidoudou的讲解1、看完讲解,我们知道要如何去解决这个问题。有两个任务我们需要解决: 给无序数组排序、每组纪念品如何分配达到最少分组。2、通过题目我们可以看到,题目作者说明每组最多2个,我们就不需要考虑3个、4个……情况了。3、对于排序,我建议使用<algprithm》库中的sort()函数,这样可以减少写不少代码。还有一个原因是,作者我手动写了个二分排序算法但每次都超时了,改用sort后就通过了,大家可以尝试写一个快的排序算法试一试

2021-10-13 22:23:25 300

原创 p1789

插火把注意:1、这个题目,我的解法是开一个数组初始化为0,有位置的地方和放光的地方我设置为1,当全部输入完后,统计n * n区域内有多少个0就可以了.2、按常规方法开数组,例如我们开一个a[100][100],从(0,0)开始。这样的话我们就要考虑是否会出界问题。但是我们开一个a[200][200]从a[50][50]开始就不需要考虑出界了。#include <stdio.h>#include <stdlib.h>#include <string.h>//

2021-10-10 17:23:06 148

原创 p1652

国庆偷懒第三篇补注意:1、问题不复杂了解原理就很简单,下面讲述全部情况。一、题目要求是画曲线,如果(x1,y1),(x2,y2)都不在任何一个圆内,那就是穿过0条边界二、如果(x1,y1),(x2,y2)在同一个圆内,可以直接连线,不需要穿过外面这个圆,也就是0条边界。三、如果(x1,y1),(x2,y2)在不同圆内(或者1个在圆内1个不在任何圆内),也就是穿过2条边界(1条边界)2、解题思路就是判断是否(x1,y1),(x2,y2)是否在圆内,下面判断方法为distance(距离) = sq

2021-10-05 18:07:51 129

原创 p1634

国庆偷懒补上第二篇这题就很简单了注意:1、感染人数等于:新感染人数+原来感染人数。2、考虑是否会溢出,记得开大点。#include <stdio.h>#include <stdlib.h>//problem: luogu p1616//author: ZhaoyangFan//date: 2021.10.5int main(){ int x,n; scanf("%d%d",&x,&n); lon

2021-10-05 17:12:15 48

原创 P1615

国庆小长假和女朋友出去几天没发,得赶快补上了。解法相对复杂了点,有更简单直接的解法。注意:1、考虑是否溢出建议开long long2、用scanf("%s",x) 得用 getchar();消去回车不然数组会变成0,之前一直出错找不到原因#include <stdio.h>#include <stdlib.h>#include <string.h>//problem: luogu p1615//author: ZhaoyangFan//date

2021-10-05 17:03:03 98

原创 p1614

苦逼大三刷题第一天解题注意:1、是连续m个,不是每隔m个2、循环累加时,如果是从零开始,一定是小于n-m+1结束。要保证最后留m个3、数组尽量开大点#include <stdio.h>#include <stdlib.h>//problem: luogu p1614//author: ZhaoyangFan//date: 2021.9.28int main(){ int a[100005]; int n,m; scanf("

2021-09-29 13:48:57 119

原创 机器学习-线性回归个人笔记

单变量的线性回归求线性回归方程有梯度下降方法和最小二乘法。这里主要讲梯度下降方法。梯度下降方法模型的表示为:h(x) = a + bxJ(a,b) = 1/(2n) ( h(xi)-yi )^2 [i=1->n累加]xi,yi为给定的训练样本,n 为x或y的个数, a,b为我们需要求的模型参数J(a,b) 代价函数,通常采用平方误差函数求平均来表示。如果代价函数收敛到某一值后最小 min(J(a,b)),此时的a,b正是我们希望的。更新公式:da = dJ/da(J(a,b) *

2021-01-24 23:13:21 473

空空如也

空空如也

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

TA关注的人

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