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

这里写图片描述
这里写图片描述

/**
 * 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)


}


这里写图片描述

这里写图片描述

//只ac0.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;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值