abc-defg

猿辅导2019校招技术类笔试题 编程题2:拍照队形

落花浮王杯 提交于 2021-02-13 12:03:28
拍照队形 时间限制:1秒 空间限制:32768K 猿辅导公司的 N位(N>=4)研发同学组织了一次秋游活动,某同学带了个无人机在高空拍照, 活动结束时,先拍了一张所有同学排成公司猴头Logo的照片, 接着有人提议再排成“猿”的首字母Y字形来拍一张合照。 用字符串中的每一个字符(不是换行符或结束符'\0')代表一位老师,输出排好后的队形。 要求 Y字除去中心点外,上下半部分等高,按照从左到右,从上到下进行排序。队形中没人的部分用空格占位。 输入数据保证可以排出一个完整的Y字,即长度为 3k+1 (k>=1) 例如: 7个 x ,排成队形为(为了方便说明,这里用‘-’代替空格): x---x -x-x --x --x --x 输入描述: 输入数据有两行,第一行输入N(N<=1000),表示字符串长度。 第二行输入字符串。 输出描述: 用字符串表示的排好的队形,没人处用空格(' ')占位,行尾不能有多余字符,即每行最后一个字符(除了换行符以外),为字符串中代表该老师的字符。 输入例子1: 4 a3f/ 输出例子1: a 3 f / 输入例子2: 7 abcdefg 输出例子2: a b c d e f g 输入例子3: 10 iiiiiiiiii 输出例子3: i i i i i i i i i i 思路分析: 因为输入的数n要满足 n=3k+1(k>=1)   例如: 7个 x

python居然有情感??真的吗??

旧巷老猫 提交于 2021-01-09 21:46:23
请输入标题 bcdef 由于最近忙于直播,没有存下稿子,在这里大邓要向大家检讨道歉。但请大家放心,每天的更新我还会保持的,大家有什么内容上的建议可以后台回复我。 请输入标题 bcdef 文本分析是很有用的一个必须掌握的技能,写爬虫爬了那么多文本,我们如何分析呢?? 有很多种角度,比如提取出文章的主题内容,这用到LDA(Latent Dirichlet Allocation),LDA是一种文档主题生成模型。这个太难,其实大邓都没学会,但大邓会努力的,争取早日学会分享给大家。 还有一个角度就是分析文本的情绪,是积极还是消极。一般咱们爬的评论都可以用到这个角度的分析方法。情感分析是一很难的东西,就算是一句“我很开心”,你能知道说这句话的人是否真开心?还要分析这个人说话的语气,语调。 但是咱们今天抛开语调,语气,单纯从文本角度对一段段的评论进行分析。我们使用了很简单的词典进行分析,准确率不是特别高,但做做学术搞搞研究还是够用的。 请输入标题 abcdefg 一、原理 比如这么一句话:“这手机的画面极好,操作也比较流畅。不过拍照真的太烂了!系统也不好。” 1.1 情感词 要分析一句话是积极的还是消极的,最简单最基础的方法就是找出句子里面的情感词,积极的情感词比如:赞,好,顺手,华丽等,消极情感词比如:差,烂,坏,坑爹等。出现一个积极词就+1,出现一个消极词就-1。 里面就有“好”,“流畅

python3 切片

烂漫一生 提交于 2021-01-08 22:55:52
一、切片的目的:获取多个元素   能够进行切片的对象有:字符串、列表、元组   语法: 1 object[start_index:end_index:step]   以下是创建一个列表 a = [0,1,2,3,4,5,6,7,8,9]的索引图,方便查看其索引值:         解释:     start_index:起始的索引值(包含该索引本身)     end_index:结束的索引值(不包含该索引本身) step:步长(正负数均可,其绝对值大小决定了切取数据时的‘‘步长”,而正负号决定了“切取方向”,正表示“从左往右”取值,负表示“从右往左”取值。当step省略时,默认为1,即从左往右以增量1取值。)    实例:   1 >>>a[:] # 从左往右 2 >>> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ] 3 >>>a[::] # 从左往右 4 >>> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ] 5 >>>a[::-1] # 从右往左 6 >>> [9, 8, 7, 6, 5, 4, 3, 2, 1 , 0] 7 >>> 8 >>> print ( ' start_index和end_index全为正(+)索引的情况 ' ) 9 >>> 10 >>>a[1:6] # step=1,从左往右取值,start_index=1到end

python切片

*爱你&永不变心* 提交于 2021-01-08 22:55:40
  切片实际上是取子集,类似于java和JS的substrig()方法的功能。为了截取指定部分的数据才产生切片的概念。 切片实际上是三个参数,  'abc'[start:end:step]   第一个参数是起始下标(取值的时候包含该下标),如果缺省该下标代表从0开始   第二个参数是结束下标(取值的时候不包含该下标),如果缺省该下标代表到最后   第三个参数是步长,即每个几个数据取一条,缺省值是1,所以第二个:也经常省略 例如: # 切片 # ########### List切片(切出来的还是一个list) ############ L = [ ' haha ' , ' xixi ' , ' hehe ' , ' heihei ' , ' gaga ' ] # 含头不含尾 # 1.利用整数从前向后切片 # 1.1取index从1到3的,包含1不包含3 print (L[1:3 ]) # 1.2从0取到3(去掉第一个值默认从0开始取元素) print (L[:3 ]) # 2.传入负数代表从最后取值 # 2.1取倒数第三个到倒数第一个(包含倒数第三个不包含倒数第一个) print (L[-3:-1 ]) # 2.2从倒数第三个取到末尾 print (L[-3 :]) # 3.按指定间隔切片(传入三个参数,第三个参数代表步长) L1=[0,1,2,3,4,5,6,7,8,9,10 ]

Java基础——字符串String

Deadly 提交于 2020-12-31 06:15:23
String类 1. String类位于java.lang包中,使用时无需导包。 2. 创建字符串的两种方式:   ① 直接指定(字面量声明):String str = "abc";   ② 使用 new 关键字声明:String str = new String ("abc"); 3. 使用 String类 时的常用方法:   ① str.length()返回字符串的长度。length() 是一个方法。 1 System.out.println("请输入用户名:" ); 2 String str= sc.next(); 3 if (str.length()<6 ){ 4 System.out.println("用户名最小为6位!" ); 5 }   ② str.equals() 判断字符串是否相等。 1 public static void main(String[] args) { 2 String str1= new String("abc" ); 3 String str2= new String("123" ); 4 System.out.println(str1.equals(str2)); 5 6 }   结果为false。   注意:.equals()和 == 的对比原则:.equals()是判断两个字符串中的每一个字符是否相等;而 ==

python第一天

妖精的绣舞 提交于 2020-12-30 00:53:05
一、python xx.py 二、字符串可以与数字相乘 str = " abc " msg = str*3 print (msg) # 结果:abcabcabc 三、换行用三个单引号 ''' 第一行 第二行 第三行 ''' 四、输入 name = input( " 请输入用户名: " ) print (name) 五、单判断使用 if():   ... else:   ... 多判断 if(): ... elif(): ... elif(): ... 六、占位符输出 name = input( " 请输入姓名: " ) age = input( " 请输入年龄: " ) msg = " 我叫%s,年龄%d,完成进度50%%" % (name , int(age)) print (msg) ''' 结果: 请输入姓名:张三 请输入年龄:20 我叫张三,年龄20,完成进度50% ''' 七、注释 # 被注释内容 ''' 被注释内容 ''' """ 被注释内容 """ 八、运算符 #int与boll转换,非0都是true,0为false # 指数 a = 3**2 print (a) # 结果:9 九、字符串 str = ' i am boy ' print (str.title()) # 按特殊字符分割,首字母大写 结果:I Am Boy str = ' baRon ' print

C++string类总结

对着背影说爱祢 提交于 2020-11-22 01:10:29
一、string的初始化 首先,为了在程序中使用string类型,必须包含头文件 <string>。如下: #include < string > 注意这里不是string.h,string.h是C字符串头文件。 string类是一个模板类,位于名字空间std中,通常为方便使用还需要增加: using namespace std; 声明一个字符串变量很简单: string str; 测试代码: #include <iostream> #include <string> using namespace std; int main ( ) { string str; //定义了一个空字符串str str = "Hello world"; // 给str赋值为"Hello world" char cstr[] = "abcde"; //定义了一个C字符串 string s1(str); //调用复制构造函数生成s1,s1为str的复制品 cout<<s1<<endl; string s2(str,6); //将str内,开始于位置6的部分当作s2的初值 cout<<s2<<endl; string s3(str,6,3); //将str内,开始于6且长度顶多为3的部分作为s3的初值 cout<<s3<<endl; string s4(cstr); //将C字符串作为s4的初值 cout<

Python 数据类型:字符串

自作多情 提交于 2020-11-11 05:22:37
一、字符串介绍 字符串是由单引号/双引号/三引号引起来的,由字母 、数字或符号等构成的一串字符 In [1]: name = " Tom " # 定义字符串 In [ 2]: type(name) # 字符串的英文缩写为str Out[2]: str 单引号 、双引号 、三引号的区别: 1. 在 python 中,单引号与双引号没什么区别,三个单引号和三个双引号也没什么区别,效果是一样的,都可以定义一个字符串 2. 单引号或双引号定义换行时,需要使用 " \n " 来实现,而三引号则可以直接回车来换行,这是三引号的不同之处 3. 三引号除了能换行定义字符串之外,还能用作多行注释,在 python 程序中,"#" 只能注释单行,而三引号则可以注释多行 4. 如下例子中,用四种方法定义的字符串,结果都是一样的 In [1]: info = ' My name is Tom.\nI like reading. ' # 用单引号定义字符串 In [ 2]: info = " My name is Tom.\nI like reading. " # 用双引号定义字符串 In [ 3]: info = ''' My name is Tom. # 用三个单引号定义字符串 ...: I like reading. ''' In [ 4]: info = """ My name is Tom. #

初级JAVA程序员应该掌握的单点登陆知识

你说的曾经没有我的故事 提交于 2020-10-14 21:46:59
什么是单点登录 一个系统登陆,其他系统也登陆 举个例子,你同时打开淘宝和天猫,你会发现当你登陆淘宝的时候,你发现你的天猫也登陆了!! 单点登录的原理 解决方案:CAS CAS是单点登录方法,也就是多个系统使用一套登陆系统的思想来解决上述问题 CAS原理解析 前提 假设有ABCDEFG三个业务系统,三个业务系统使用统一的登陆系统X 问题 例如用户已登陆A系统,如何让他直接可以登录B系统? 实现是这样子的 首先,分析用户登陆A系统, 在登陆系统之前先跳转到X系统, 根据token判断有没有登陆, 如果已经登陆,将token传给A系统 如果验证后没有登陆, 输入用户密码没错后获得token,并跳转至A系统 这样,用户在A系统登陆后,X系统存着token, 登陆B系统时,就直接拿着从X系统获得的token就登上了 举例 登陆淘宝天猫时都用到了:https://login.taobao.com/member/login.jhtml?(X系统) 而redirectURL=不同,分别是不同的业务系统(ABCDEFG) https://login.taobao.com/member/login.jhtml?spm=a2e15.8261149.754894437.1.249c29b4v2gbYk&f=top&redirectURL=https%3A%2F%2Fuland.taobao.com

程序员10大算法

落爺英雄遲暮 提交于 2020-10-09 03:01:35
程序员常用的10个算法: 1)2分查找 场景:非递归的二分查找。 (1)之前讲过递归算法. 非递归反而更好理解。 (2)需要先保证数组有序. 2)dac(divide and conquer分治算法) (1)分治算法使用场景: 傅里叶变换 二分搜索 大整数乘法 棋盘覆盖 合并排序 快速排序 线性时间选择 最接近点对问题 循环赛日程表 汉诺塔 (2)如何分、如何治: 看成2部分,AB为1个部分,C为一个部分,那么就是AB移动到b位置,C移动到c位置,AB移动到c位置. 先把最上面的盘A--》B 把最下面的盘A--》C 把B塔的所有盘,从B--》C (3)没有思想,不知道如何拆分是难点. 先有思想,然后把思想转为代码。 3)dynamic(动态规划) 场景: 01背包问题 (1)把大的问题划分为小的问题,从而一步步获取最优解的处理算法 (2)动态规划与分治不同的是: 适用于动态规划求解的问题,经分解得到子问题往往不是独立的。 下一个子阶段的求解是建立在上一个子阶段的解的基础上。 而 分治在2个盘和3个盘的移动是没有什么关系的,是独立的问题。 (3)动态规划是:填表的方式实现的。 思想--》公式--》水到渠成。和数学也没有什么关系。 w[i]: 第i的商品的重量 v[i]: 第i个商品的价值 v[i][j]: 表示在前i个物品中能够装入容量为j v[i][0] = v[0][j] = 0