腾讯web前端开发-2019校园招聘(正式卷)

有人分享编程题答案吗#前端##腾讯#
全部评论
只存了第二题的代码.. let n = parseInt(readline()); let nut = readline(); nut_arr = nut.split(" "); if(nut_arr.indexOf('1')==nut_arr.lastIndexOf('1'))   print(1); else{     let reg = /^0+|0+$/g;     nut = nut.replace(/\s/g,"");     nut = nut.replace(reg,"");     nut_arr_2 = nut.split("");     zero = [];     let sub_zero =0;     for(let i =0;i<nut_arr_2.length;i++){         if(nut_arr_2[i]==1){             if(sub_zero!=0){                 zero.push(sub_zero+1);                 sub_zero = 0;             }         }         else            sub_zero++;     }     zero.length>1?print(zero.reduce((p,n)=>p*n)):(zero.length==1?print(zero[0]):print(1)) }
点赞 回复
分享
发布于 2018-09-16 16:42
全通过 自己瞎写的 没算法 var nn = parseInt(readline()); for(let i=0;i<nn;i++){     var n = parseInt(readline());     if(f(n))         print('Yes');     else         print('No'); } function f(n) {     var tag = n;     var he = 0;     var p = 10;     do{         var s = parseInt(tag/p);         var y = tag%p;         he += y;         tag = s;     }while(s);     //console.log(he);     if(n%he==0)         return true;     else         return false; var nn = parseInt(readline()); var q = readline().split(' '); var n=1; var x; var y; for(let i=0;i<nn;i++){     x = q.indexOf('1',i);     y = q.indexOf('1',x+1);     if(y==-1)         break;     n *= y-x;     i=x; } print(n); var s = readline(); var a = readline(); var n = 0; var t = 0; var slen = s.length; var alen = a.length; var x = 0; for(let i=0;i<slen+1;i++){     let ss = s.slice(i,i+alen);     if(ss==a){         t++;         x = alen-1;     }else{         if(x>0) {             x--;             t++;         }else{             n += t*t;             t = 0;         }     } } print(n);
点赞 回复
分享
发布于 2018-09-16 16:49
联易融
校招火热招聘中
官网直投
就会12,第三题还在搞思路
点赞 回复
分享
发布于 2018-09-16 16:40
第一题:和谐数 /** * Created by dcp on 2018/09/16. */ /** * Created by dcp on 2018/09/16. */ const readline = require('readline'); const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); var inputArr = []; rl.on('line', function (input) { inputArr.push(input); var nLine = +inputArr[0];//转化成数字类型 if (inputArr.length == (nLine + 1)) { var arr = inputArr.slice(1); for(var i=0;i<arr.length;i++){ hexie(arr[i]) } inputArr = []; } }); function hexie(n) { var sum=0; var t=parseInt(n); var arr=n.split('') var re=arr.map(function (ietm) { return ietm-0 }) for(var i=0;i<re.length;i++){ sum+=re[i]; } sum=parseInt(sum) if(t%sum===0){ console.log('Yes') }else { console.log('No') } } //第二题:坚果巧克力 /** * Created by dcp on 2018/9/16. */ /** * Created by dcp on 2018/09/16. */ var readline=require("readline"); var r1=readline.createInterface({ input:process.stdin, output:process.stdout }); //k控制输入行数 var k=3 //数组存储输入 var inputs=[]; r1.on("line",function(data){ inputs.push(data); if(inputs.length==2) { //字符串形式输出 var num0 = inputs[0].split(' ').toString() //数组形式输出 var num1 = inputs[1].split(' ') //将['2','3']转换成[2,3] // var num2=inputs[2].split(' ') // var mapResult=num2.map(function (item) { // return item-0 // }) jiangu(num1) } }); function jiangu(arr) { var cz=1,p=[]; for(var i=0;i<arr.length;i++){ if(arr[i]=='0'){ cz+=1; }else { p.push(cz) cz=1; } } p[0]=1; var s=1; for(var i=0;i<p.length;i++){ s*=p[i]; } console.log(s) } //第三题:能量矿石,通过0.4 #include <iostream> #include <fstream> using namespace std; int main() { #ifdef DEBUG ifstream cin("../Tencent/data4.in"); if (!cin.is_open()) { cout << "open error" << endl; exit(0); } #endif string S, P; cin >> S >> P; int lenP = P.length(); int lenS = S.length(); int idx = lenP; for (int i = 1, j = lenP - 1; i <= j; ++i, --j) { if (P.substr(0, i) == P.substr(j, lenP - j)) { idx = min(idx, j); } } int maxLen = 0; int preIdx = 0; int res = 0; for (int i = 0; i < lenS;) { if (S.substr(i, lenP) == P) { maxLen = max(maxLen, i + lenP - preIdx); i += idx; } else { // i+=lenP; ++i; preIdx = i; res += maxLen * maxLen; maxLen = 0; } } res += maxLen * maxLen; cout << res << endl; return 0; }
点赞 回复
分享
发布于 2018-09-16 16:50
https://www.nowcoder.com/discuss/110790?type=2&order=0&pos=25&page=1 数学思路,胡写的,想到哪写到哪,也没做优化啥的,全都AC了
点赞 回复
分享
发布于 2018-09-16 17:14
2.9 https://blog.csdn.net/u013594470/article/details/82726151
点赞 回复
分享
发布于 2018-09-16 17:55
import java.util.Scanner; public class Main {     public static void main(String[] args) {         Scanner scanner = new Scanner(System.in);                  int t = scanner.nextInt();         scanner.nextLine();         for (int i = 0; i < t; i++) {             String tmpString = scanner.nextLine();             check(tmpString);         }                  scanner.close();     }     public static void check(String checkedString) {         int sum = 0;         for (int i = 0; i < checkedString.length(); i++) {             sum += (checkedString.charAt(i) - '0');         }                  int res = Integer.parseInt(checkedString) % sum;                  if (res == 0) {             System.out.println("Yes");         } else {             System.out.println("No");         }     } } import java.util.Scanner; public class Main {     public static void main(String[] args) {         Scanner scanner = new Scanner(System.in);         int N = scanner.nextInt();                  int res = 1;         int last = -1;                  for (int i = 0; i < N; i++) {             int input = scanner.nextInt();             if (input == 1) {                 if (last >= 0) {                     res *= (i - last);                     last = i;                 } else {                     last = i;                 }             }         }                  scanner.close();                  System.out.println(res);     } } import java.util.ArrayList; import java.util.Iterator; import java.util.List; import java.util.Scanner; public class Main {     public static void main(String[] args) {         Scanner scanner = new Scanner(System.in);                  String s = scanner.nextLine();         String p = scanner.nextLine();                  scanner.close();                  List<String> pList = new ArrayList<String>();         pList.add(p+p);         fun(p, pList);         pList.add(p);                  int res = 0;         int tmpRes = 0;         boolean flag = false;                  for (int i = 0; i < s.length(); ) {             flag = false;                          for (Iterator<String> iterator = pList.iterator(); iterator.hasNext();) {                 String string = (String) iterator.next();                 if (s.length() - i >= string.length() && s.substring(i, string.length() + i).equals(string)) {                     tmpRes += string.length();                     i += string.length();                     flag = true;                     break;                 }             }                          if (flag == false) {                 res = Math.max(res, tmpRes);                 tmpRes = 0;                 i++;             }         }                  res = Math.max(res, tmpRes);         System.out.println(res * res);     }          public static void fun(String pString, List<String> pList) {         StringBuffer stringBuffer = new StringBuffer(pString);         int i = 1;         for (; i < pString.length(); i++) {             if (pString.substring(i, pString.length()).equals(pString.substring(0, pString.length() - i))) {                 break;             }         }                  if (i < pString.length()) {             stringBuffer.append(pString.substring(pString.length() - i, pString.length()));             System.out.println(stringBuffer);             pList.add(stringBuffer.toString());         }     } }
点赞 回复
分享
发布于 2018-09-16 18:09

相关推荐

点赞 13 评论
分享
牛客网
牛客企业服务