好未来-笔试-算法

1.一长数字切割,使得各部分3的倍数个数最多
如:12345,切为12,3,45,返回3

import sys
def sp(x):
    cou, sum = 0, 0
    for i in range(len(x)):
        sum += int(x[i])
         if sum % 3 == 0:
            cou += 1
            sum = 0
  return cou
for line in sys.stdin:
    x = line.strip()
     print(sp(x))
2.递增序列最大和
int increaseArraySum(int *a, int n){
    int sum[n],max_sum=0;
    for(int i=0;i<n;i++){
        sum[i]=a[i];
        for(int j=0;j<i;j++){
            if (a[j]<a[i])
                 sum[i]=max(sum[i],sum[j]+a[i]);
        }
        max_sum=max(max_sum,sum[i]);
    }
    return max_sum;
}


3. p面骰子,其中n面奖励在掷一次,分数即骰子当面数字;求掷一次的分数期望
input:6 1                  6面,1面奖励
1 1 1 1 1 1     6面,每面分数
output :1.2               1+1+1+1+1+1【+1奖励一次】   /  6 =1.2
4.实现字符串替换
Replc(src,src_str,dst_str,out)#好未来##笔试题目##题解#
全部评论
第一题,12343,就不对了吧
点赞 回复
分享
发布于 2018-08-28 22:57
第二题,java和你一样,就是过不了,86%,越界
点赞 回复
分享
发布于 2018-08-28 22:58
阿里巴巴
校招火热招聘中
官网直投

相关推荐

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