2023 富途笔试 富途笔试题 0916

笔试时间:2023年9月16日 秋招

第一题

题目:完美对

有n个物品,每个物品有k个属性,第i件物品的第j个属性用一个正整数表示记为aij,两个不同的物品i,j被称为是完美对的当且仅当ai1十aj1 =ai2 十 aj2 =···=aik 十ajk,求完美对的个数。

输入描述

第一行两个数字n,k。

接下来n行,第i行k个数字表示ai1,ai2,...,aik。

1 <= n <= 10^5, 2 <= k <= 10, 1 <= ai <= 100

输出描述

一行一个数字表示答案。

样例输入

5 3

2 11 21

19 10 1

20 11 1

6 15 24

18 27 36

样例输出

3

参考题解

模拟,每一个偶数转化成字符串拼接上已有的字符串后面,直到字符串长度超过n。

C++:[此代码未进行大量数据的测试,仅供参考]

#include <iostream>
#include <map>
#include <vector>

using namespace std;

typedef long long ll;

const int N = 100004;

int n, k;
map<vector<int>, int> mp;

int main() {
    ll ans = 0;
    cin >> n >> k; 

    vector<int> u(k), v(k);
    for (int i = 0; i < n; i++) {
        for (int j = 0; j < k; j++) {
            cin >> u[j]; 
        }
        int mn = *min_element(u.begin(), u.end());
        int mx = *max_element(u.begin(), u.end());
        for (int s = mx + 1; s <= mn + 100; s++) {
            for (int j = 0; j < k; j++) {
                v[j] = s - u[j];
            }
            auto it = mp.find(v);
            if (it != mp.end()) {
                ans += it->second;
            }
        }
        ++mp[u];
    }
    cout << ans << endl; 
    return 0;
}

Java:[此代码未进行大量数据的测试,仅供参考]

import java.util.*;
import java.util.stream.IntStream;

public class Main {
    public static void main(String

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

2023 秋招笔试题汇总解析 文章被收录于专栏

2023秋招各大笔试题汇总,c++,java,python多种语言分析,解答。

全部评论

相关推荐

02-10 12:23
已编辑
新余学院 C++
采集想要offer:专业技能那里要一条一条的列出来吧,感觉你项目很厉害了,但是如果你不写技术栈面试官对你项目不太懂的话都没办法问你八股😂C++都是基架岗,都是一群9✌🏻在卷,我觉得你要是有时间学个go把MySQL和redis写上去找个开发岗吧
点赞 评论 收藏
分享
评论
1
4
分享

创作者周榜

更多
牛客网
牛客企业服务