avatar-decorate
NotDeep level
获赞
910
粉丝
393
关注
81
看过 TA
34
中国戏曲学院
2016
算法工程师
IP属地:重庆
暂未填写个人简介
私信
关注
头像
2017-03-24 13:33
已编辑
中国戏曲学院 算法工程师
第二场编程题合集:https://www.nowcoder.com/test/4546329/summary 最长公共子串 分析 注意跟最长公共子序列的区别,还有空格也作为字符在匹配就好了,经典题。 参考code #include <bits/stdc++.h> using namespace std; char s1[55], s2[55]; int main() { gets(s1); gets(s2); int ans = 0, k; for(int i = 0; i < strlen(s1); ...
彩笔1990:平衡数:对所有位的乘积判断是否是一个平方数。 public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); while (in.hasNext()) { getValue(in.nextInt()); } } public static void getValue(int data) { String s = String.valueOf(data); int R = 1; for (int i = 0; i < s.length(); i++) { R = R * (s.charAt(i) - '0'); } int r = (int) Math.sqrt((double) R); if (r * r == R) System.out.println("YES"); else System.out.println("NO"); } }
投递美的集团等公司10个岗位 >
0 点赞 评论 收藏
分享
头像
2016-09-06 22:56
已编辑
中国戏曲学院 算法工程师
连续最大和&nbsp;分析:&nbsp;经典水题。没啥好说的.&nbsp;时间复杂度:&nbsp;O(n)&nbsp;参考code:&nbsp;#include&nbsp;&lt;iostream&gt;&nbsp;#include&nbsp;&lt;algorithm&gt;&nbsp;using&nbsp;namespace&nbsp;std;&nbsp;int&nbsp;main(){&nbsp;int&nbsp;n;&nbsp;scanf(&quot;%d&quot;,&amp;n);&nbsp;int&nbsp;sum&nbsp;=&nbsp;0,&nbsp;mx&nbsp;=&nbsp;-99999999;&nbsp;for(int&nbsp;j&nbsp;=&nbsp;0;&nbsp;j&nbsp;&lt;&nbsp;n;&nbsp;j++){&nbsp;int&nbsp;temp;&nbsp;scanf(&quot;%d&quot;,&...
toraoh:问答题参考解法: 题目大意:给你一个ipv4地域库(ipv4地址的网段表示法,比如12.34.56.0/24,对应相应地理位置的表),保证各个网段互不重叠,但是一个地域可以对应多个网段。请设计一个数据结构,能过快速地查询用户询问的ip所对应的地理位置。请说明你的方法的时空复杂度。 参考解法: 计算机中ipv4地址是32位无符号整数。 我们将ipv4的地址和网段都变成32位无符号整数,然后转换成对应的32位的二进制表示。 之后使用字典树/键树/Trie(二叉树也可以),每个节点有2个分支:一个分支表示下一位是0,另一个分支表示下一位是1. 首先要将所有地域库的信息插入这个树中。对网段,保留相应的掩码长度,在掩码长度最后一位对应的节点,顺带标记上,这是一个网段节点,对应的地域为xxx。 插入完成之后,我们可以处理查询。对每个查询,转成32位的01串,在树上,根据每一位的具体值,决定往下走到哪个节点,来进行查找。当走到某个节点,走不下去的时候: 如果这个节点没有地域信息,说明库中没有对应条目。 如果这个节点有地域信息,说明我们找到了,返回这个地域信息。 综上所述: 插入阶段: 时间复杂度O(32n)=O(n) 空间复杂度O(32n)=O(n) 其中n为地址库中的地址数目 查询阶段: 时间复杂度O(32)=O(1) 空间复杂度O(1)
投递滴滴等公司10个岗位 >
0 点赞 评论 收藏
分享
关注他的用户也关注了:
牛客网
牛客企业服务