p1

js基础 ------ 继承

假装没事ソ 提交于 2020-02-18 07:53:06
JS 继承是一个非常强大的特性之一。 首先,我们定义一个需要实现继承的父类, // 定义一个人的基类 function People (name, age) { this.name = name || ''; this.age = age || 20; this.detail = function() { console.log(this.name + '年龄:' + this.age); } } People.prototype.hello = function () { console.log(this.name + ',你好!'); } 1、原型链继承 function Woman () { } Woman.prototype = new People(); Woman.prototype.name = '小丽'; Woman.prototype.age = '18'; var p1 = new Woman(); console.log(p1.name); console.log(p1.detail()); console.log(p1.hello()); 缺点: 创建子类实例时,无法向父类构造函数传参 来自原型对象的引用属性是所有实例共享的 2、构造继承 function Woman (name, age) { People.apply(this, arguments);

P1084 外观数列

旧街凉风 提交于 2020-02-10 19:46:10
转跳点: 🐏 1084 外观数列 (20分) 外观数列是指具有以下特点的整数序列: d, d1, d111, d113, d11231, d112213111, ... 它从不等于 1 的数字 d 开始,序列的第 n+1 项是对第 n 项的描述。比如第 2 项表示第 1 项有 1 个 d ,所以就是 d1 ;第 2 项是 1 个 d (对应 d1 )和 1 个 1(对应 11),所以第 3 项就是 d111 。又比如第 4 项是 d113 ,其描述就是 1 个 d ,2 个 1,1 个 3,所以下一项就是 d11231 。当然这个定义对 d = 1 也成立。本题要求你推算任意给定数字 d 的外观数列的第 N 项。 输入格式: 输入第一行给出 [0,9] 范围内的一个整数 d 、以及一个正整数 N( ≤ 40),用空格分隔。 输出格式: 在一行中给出数字 d 的外观数列的第 N 项。 输入样例: 1 8 输出样例: 1123123111 这道题的难点在于如何探测数组的边缘,我直接试错,试出来的。 #include <stdio.h> #include <stdlib.h> int main(void) { int d, n; int count = 0; char str1[100000] = {0}, str2[100000] = {0}; char *s1 = str1, *s2

C++中的友元

断了今生、忘了曾经 提交于 2020-02-06 00:57:23
文章目录 1 C++中的友元 1.1 友元的概念 1.2 友元的用法 1.3 友元的注意事项 1.4 友元的尴尬 1 C++中的友元 1.1 友元的概念 什么是友元: 友元是C++中的一种关系。 友元关系发生在函数与类之间或者类与类之间。 友元关系是单项的,不能传递。 1.2 友元的用法 用法如下: 在类中以friend关键字声明友元。 类的友元可以是其它类或者具体函数。 友元不是类的一部分。 友元不受类中访问级别的限制。 友元可以直接访问具体类的所有成员。 友元的语法: 在类中用friend关键字对函数或类进行声明。 友元使用示例: # include <stdio.h> # include <math.h> class Point { double x ; double y ; public : Point ( double x , double y ) { this -> x = x ; this -> y = y ; } double getX ( ) { return x ; } double getY ( ) { return y ; } friend double func ( Point & p1 , Point & p2 ) ; } ; double func ( Point & p1 , Point & p2 ) { double ret = 0 ; ret =

Codeforces Round #617 (Div. 3)F. Berland Beauty

こ雲淡風輕ζ 提交于 2020-02-05 23:55:21
题意: 给一棵树,边权未知,现在给m组约束,每组约束给出从u到v路径中的最小值,现在让你给出一组边权,使得符合之前的约束,不能给出输出-1 思路: 因为n较小,对于每组约束我们可以直接暴力修改路径上的权值,如果边的权值小于当前约束的最小值,则将权值修改,最后再根据每组约束暴力走一遍路径看路径是否满足要求,如果不满足则输出-1,最后还得对那些没有修改过的边随意赋值 #include<iostream> #include<algorithm> #include<vector> #include<cstring> #define inf 0x3f3f3f3f using namespace std; const int maxn=5005; int id[maxn][maxn],edge[maxn][maxn],fa[maxn],f[maxn],dep[maxn]; //id记录从i到j这条边的编号,edge记录边的权值,fa记录i的父亲是谁,f记录边的权值 ,dep记录深度 vector<int> a[maxn]; int from[maxn],to[maxn],mi[maxn]; int n,m,u,v,w; void dfs(int x,int p)//处理出父亲与深度 { fa[x]=p,dep[x]=dep[p]+1; for(int i=0;i<a[x].size();i++

UVALive 4639 && SPOJ SPOINTS && POJ 3805 && AOJ 1298 Separate Points 求两个凸包是否相交 难度:3

时光怂恿深爱的人放手 提交于 2020-02-03 00:09:35
https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=2640 http://www.spoj.com/problems/SPOINTS/en/ http://poj.org/problem?id=3805 http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=1298 要想有一条直线分两个凸包,两个凸包不相交,不相切是必要的 在没有模板的情况下,我的代码,过了poj,uva,和spoj的,但是过不了aoj的,和正确代码对拍所发现的情况不太符合事实 方法是: 1.判断每个点是否在凸包里面或者边上 2.判断两凸包每两条线段是否相交 #include <cstdio> #include <cstring> #include <algorithm> #include <cmath> using namespace std; const double eps=1e-8; const int maxn=205; int dcmp(double d){ if(fabs(d)<eps)return 0; return d>0?1:-1; } struct pnt{ double x,y;

面向对象之封装

旧时模样 提交于 2020-02-01 20:03:46
一、封装    1.什么是封装?   在程序设计当中,封装是对具体对象的一种抽象,也就是说将某些部分隐藏起来,程序外部访问不到,其含义是其他程序无法调用的。   要了解封装,离不开“私有化”,就是将类或者是函数中的某些属性限制在某个区域之内,外部无法调用。    2.为什么要封装?   封装数据的主要原因是:保护隐私(把不想别人知道的东西封装起来)   封装方法的主要原因:隔离复杂度(比如:洗衣机,我们看见的就是一个黑匣子,其实里面有很多电器元件,对于用户来说,我们不清楚里面都有哪些元件,电视机把那些电器元件封装在黑匣子里,提供给用户的只是几个按钮接口,通过按钮来操作洗衣机)    3.被封装的两个特点:外界不能直接访问,内部依然可以使用。 二、封装两个层面   封装分为两层,但无论哪种层面的封装,都要对外界提供好访问你内部隐藏内容的接口(这个接口我们暂时可以理解为入口,有了这个入口,使用者无需且不能够直接访问到内部隐藏的细节,只能走接口,而且可以在接口的实现上附加更多的逻辑,来控制使用者的访问)   第一层面的封装(什么都不用做):创建类和和对象会分别创建二者的名称空间,我们只能用类名或者obj.的方式去访问里面的名字,这本身就是一种封装。   第二层的封装:类中把某些属性和方法隐藏起来(或者说定义成私有的),只在类的内部使用,外部无法访问,或者留下少量接口供外部访问。  

进程方法,属性

旧街凉风 提交于 2020-01-31 13:50:16
p.start():启动进程,并调用该子进程中的p.run() p.run():进程启动时运行的方法,正是它去调用target指定的函数,我们自定义类的类中一定要实现该方法 p.terminate():强制终止进程p,不会进行任何清理操作,如果p创建了子进程,该子进程就成了僵尸进程, 使用该方法需要特别小心这种情况。如果p还保存了一个锁那么也将不会被释放,进而导致死锁 p.is_alive():如果p仍然运行,返回True p.join([timeout]):主线程等待p终止(强调:是主线程处于等的状态,而p是处于运行的状态)。 等待进程p结束后,join函数内部会发送系统调用wait,去告诉操作系统回收掉进程p的id号 timeout是可选的超时时间,需要强调的是,p.join只能join住start开启的进程,而不能join住run开启的进程 p.daemon:默认值为False,如果设为True,代表p为后台运行的守护进程,当p的父进程终止时,p也随之终止, 并且设定为True后,p不能创建自己的新进程,必须在p.start()之前设置 p.name:进程的名称 p.pid:进程的pid p.exitcode:进程在运行时为None、如果为–N,表示被信号N结束 p.authkey:进程的身份验证键,默认是由os.urandom()随机生成的32字符的字符串

DB2分区表如何区分索引是分区索引还是非分区索引

一世执手 提交于 2020-01-22 15:59:30
问题描述 : 经常有人问,我分区表里的索引到底是分区索引还是非分区索引? 因为是否是分区索引涉及到detach分区的时候是否会耗费大量的时间做异步索引清理:如果是非分区索引,则异步索引清理需要大量时间。 总体结论 : --对于唯一索引或者主健,如果包含了分区健,则默认是分区索引;如果不包含分区健,则默认是非分区索引。 --对于非唯一索引,默认都是分区索引。 测试过程 DB2版本为10.5 $ db2 "create table p1 (col1 int not null, col2 int not null, col3 int not null) partition by range(col2)(partition part1 starting 1 ending 5, partition part2 starting 6 ending 10, partition part3 starting 11 ending 15)" 1. 唯一索引 $ db2 "create unique index u_idx1 on p1 (col1)" $ db2 "create unique index u_idx1_2 on p1 (col1,col2)" $ db2 "create unique index u_idx1_3 on p1 (col1,col3)" $ db2look -d

实例的增删改查

心不动则不痛 提交于 2020-01-20 00:29:59
接上一篇 print(p1.name) print(p1.play_ball('篮球')) '查看实例的属性' p1.age=18 print(p1.age) '实例的增加' def test(self): pass p1.test(p1) '函数属性的增加 此时如果不传参数 实例不会自动传self 所以要加入p1' '修改和删除同类属性' 以下这个方法可以修改底层的字典,但是非常不建议修改 p1.__dict__['sex']='male' print(p1.sex) 来源: https://www.cnblogs.com/linglingdog/p/12216069.html

pair

五迷三道 提交于 2020-01-15 07:03:48
pair < T1 , T2 > p1 ; //创建一个空的pair对象(使用默认构造),它的两个元素分别是T1和T2类型,采用值初始化。 pair < T1 , T2 > p1 ( v1 , v2 ) ; //创建一个pair对象,它的两个元素分别是T1和T2类型,其中first成员初始化为v1,second成员初始化为v2。 make_pair ( v1 , v2 ) ; // 以v1和v2的值创建一个新的pair对象,其元素类型分别是v1和v2的类型。 p1 < p2 ; // 两个pair对象间的小于运算,其定义遵循字典次序:如 p1.first < p2.first 或者 (p2.first == p1.first) && (p1.second < p2.second) 则返回true。 p1 == p2; // 如果两个对象的first和second依次相等,则这两个对象相等;该运算使用元素的==操作符。 p1 . first ; // 返回对象p1中名为first的公有数据成员 p1 . second ; // 返回对象p1中名为second的公有数据成员 来源: CSDN 作者: 溺水的鱼。。。 链接: https://blog.csdn.net/weixin_43310882/article/details/103928538