腾讯音乐笔试 源码 0926

第一题(AC):
一次可以变2个,将字符串变为全0或全1

思路:暴力

class Solution {
public:
    int minOperations(string str) {
        int len = str.length();

        // all to 0
        int ans0 = 0;
        for (int i = 0; i < len; ++i) {
          if (str[i] == '1') {
            ++ans0;
            ++i;
          }
        }

        int ans1 = 0;
        for (int i = 0; i < len; ++i) {
          if (str[i] == '0') {
            ++ans1;
            ++i;
          }
        }

        return min(ans0, ans1);
    }
};
第二题(AC):
给一个数组,找一段区间,其区间内的积的后缀有不少于x个0;给定x之后求有多少种这样的区间。
思路:
统计每个数内2和5的个数,然后前缀和。

class Solution {
public:
    int getSubarrayNum(vector<int>& a, int x) {
      const int mod = 1e9 + 7;
      int size = a.size();

      vector<int> n2(size, 0);
      vector<int> n5(size, 0);
      for (int i = 0; i < size; ++i) {
        if (i) {
          n2[i] = n2[i - 1];
          n5[i] = n5[i - 1];
        }
        int num = a[i];
        while (num % 2 == 0) {
          ++n2[i];
          num /= 2;
        }
        while (num % 5 == 0) {
          ++n5[i];
          num /= 5;
        }
      }

      long long ans = 0;
      for (int i = 0; i < size; ++i) {
        int num = (i ? n2[i - 1] : 0) + x;
        int dis2 = 0, dis5 = 0;
        auto p = lower_bound(n2.begin(), n2.end(), num);
        dis2 = distance(p, n2.end());

        num = (i ? n5[i - 1] : 0) + x;
        p = lower_bound(n5.begin(), n5.end(), num);
        dis5 = distance(p, n5.end());

        ans = (ans +  min(dis2, dis5)) % mod;
      }
      return ans;

    }
};

第三题(15%):

求好矩阵。

思路:每增加一行/一列,种类就*2.
所以总的种类有

其中8是2*2矩阵能带来的种类数。

然后x为偶数,也就是说每一个格子有x/2种选择,所以一共有


种可能。

然后对结果取模就可以。

注意%mod要根据费马小定理求

不知道为什么只过了15%
class Solution {
public:
    const long long mod = 1e9 + 7;
    int numsOfGoodMatrix(int n, int m, int x) {
        // write code here
        long long y = (long long)m + (long long)n;
        y %= mod;
        long long num1 = quickM(x, y);
        long long num2 = quickM(2, mod - 2);
        return  (int)((num1 * num2) % mod);
    }

    long long quickM(int b, long long y) {
      long long base = b % mod;
      long long ans = 1;
      while (y) {
        if (y & 1) ans = (ans * base) % mod;
        base = (base * base) % mod;
        y >>= 1;
      }
      return ans;
    }
};



#腾讯##腾讯音乐##腾讯音乐娱乐笔试##腾讯音乐23秋招笔试好难啊,麻了#
全部评论
按照每个位置填入值的奇偶性进行计算,那么偶数有 x/2 奇数有 x/2种情况。 理论上只有确认每个位置的奇偶性即可判断 2*2是否为偶数。 只要确定了第一行和第一列的奇偶情况,其他所有位置的奇偶情况一定确定。 (为什么一定确定,因为对于2*2,只要确定了3个格子,为保证偶数,第四个格子的奇偶性是唯一的。) 所以是 a= pow(2, m+n-1)种情况。 然后每种情况一共有b = pow(x/2, m*n)种排列情况。 总情况为  a*b。
3 回复 分享
发布于 2022-09-27 11:32 重庆
感谢分享
点赞 回复 分享
发布于 2022-09-27 09:48 北京
同学同花顺尝试一下吗,面试简单不造火箭,可保姆式全程跟进度,我帖子有内推
点赞 回复 分享
发布于 2022-09-27 09:31 浙江
第三题简直世另我
点赞 回复 分享
发布于 2022-09-26 22:36 北京
第三题思路一样。为什么只过15%,至今没找出问题在哪
点赞 回复 分享
发布于 2022-09-26 21:18 江苏

相关推荐

03-21 10:53
复旦大学 Java
大家好,我是@程序员花海,眼下&nbsp;26&nbsp;届春招、27&nbsp;届暑期实习全面开启,后端卷到没边,AI&nbsp;Agent的岗位占主导,很多牛友在我的评论区留言,想让我出一份Agent学习路线。我特意去看了下,打开淘天的招聘页面,以校招为例,一眼望去全是AI相关的岗位,只能说之后绝大多数岗位都会快速推进AI的落地和实践。之前写过&nbsp;Java&nbsp;后端&nbsp;3&nbsp;个月抢救路线https://www.nowcoder.com/discuss/824693499982315520?sourceSSR=users,也收到了牛友们的强烈好评,这次专门给后端转&nbsp;Agent做一套最少必要知识路线——&nbsp;不堆概念、不啃论文,只学面试必问、项目...
在职牛马didi:这篇路线整理得很系统,把后端知识映射到Agent体系这个思路特别实用。我自己也是从Java转做AI的,感触很深:工程底子扎实的人转Agent确实有优势,RAG和工具编排这些核心能力本质上都是后端逻辑的延伸。我们团队在做天猫的AI应用落地,方向跟你这篇路线里的企业级RAG和Agent系统很接近。暑期实习还在招AI应用研发工程师,JD可以参考看看跟你背景是否匹配:https://www.nowcoder.com/jobs/detail/440929?jobId=440929
软件开发投递记录
点赞 评论 收藏
分享
评论
2
13
分享

创作者周榜

更多
正在热议
更多
# 长得好看会提高面试通过率吗? #
5182次浏览 51人参与
# 百度工作体验 #
316364次浏览 2232人参与
# MiniMax求职进展汇总 #
25428次浏览 323人参与
# 沪漂/北漂你觉得哪个更苦? #
1804次浏览 43人参与
# 离家近房租贵VS离家远但房租低,怎么选 #
16943次浏览 137人参与
# 春招至今,你的战绩如何? #
16737次浏览 152人参与
# 米连集团26产品管培生项目 #
7671次浏览 235人参与
# 你的实习产出是真实的还是包装的? #
3470次浏览 58人参与
# HR最不可信的一句话是__ #
1196次浏览 33人参与
# AI面会问哪些问题? #
1048次浏览 29人参与
# 你做过最难的笔试是哪家公司 #
1414次浏览 24人参与
# AI时代,哪个岗位还有“活路” #
3089次浏览 54人参与
# 不考虑薪资和职业,你最想做什么工作呢? #
152992次浏览 889人参与
# 简历第一个项目做什么 #
32246次浏览 367人参与
# 军工所铁饭碗 vs 互联网高薪资,你会选谁 #
8066次浏览 43人参与
# 简历中的项目经历要怎么写? #
311295次浏览 4282人参与
# XX请雇我工作 #
51168次浏览 171人参与
# 投格力的你,拿到offer了吗? #
178440次浏览 891人参与
# 你最满意的offer薪资是哪家公司? #
77039次浏览 375人参与
# AI时代,哪些岗位最容易被淘汰 #
65036次浏览 915人参与
# 秋招白月光 #
731620次浏览 5439人参与
# 当下环境,你会继续卷互联网,还是看其他行业机会 #
187700次浏览 1123人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务