zoukankan      html  css  js  c++  java
  • 4Sum II

    https://leetcode.com/submissions/detail/153740275/

    class
    Solution { public: int fourSumCount(vector<int>& A, vector<int>& B, vector<int>& C, vector<int>& D) { unordered_map<int,int> CD_freq; for (auto i : C) for (auto j : D) CD_freq[i+j]++; int res = 0; for (auto a : A) for (auto b : B) { auto it = CD_freq.find(-(a+b)); if (it != CD_freq.end()) res += it->second; } return res; } int fourSumCount(vector<int>& A, vector<int>& B, vector<int>& C, vector<int>& D) { unordered_map<int,int> CD_freq; for (auto i : C) for (auto j : D) CD_freq[i+j]++; int res = 0; for (auto a : A) for (auto b : B) res += CD_freq[-(a + b)];  // If CD_freq[-(a+b)] doesn't exist, it will be added! So map becomes much bigger!!! return res; } int fourSumCount_n3(vector<int>& A, vector<int>& B, vector<int>& C, vector<int>& D) { unordered_map<int,int> D_freq; for (auto i : D) D_freq[i]++; int res = 0; for (int i = 0; i < A.size(); i++) for (int j = 0; j < B.size(); j++) for (int k = 0; k < C.size(); k++) res += D_freq[-(A[i] + B[j] + C[k])]; return res; } int fourSumCount_n4(vector<int>& A, vector<int>& B, vector<int>& C, vector<int>& D) { int res = 0; for (int i = 0; i < A.size(); i++) for (int j = 0; j < B.size(); j++) for (int k = 0; k < C.size(); k++) for (int l = 0; l < D.size(); l++) if (A[i] + B[j] + C[k] + D[l] == 0) res++; return res; } };
  • 相关阅读:
    anchor-free : CornerNet 和 CenterNet 简要笔记
    图像分割中的loss--处理数据极度不均衡的状况
    python 装饰器
    python3 新特性
    VSCode Eslint+Prettier+Vetur常用配置
    JS lodash学习笔记
    JS 高端操作整理
    Vue 组件通信
    Vue 搭建vue-element-admin框架
    小程序 HTTP请求封装
  • 原文地址:https://www.cnblogs.com/JTechRoad/p/9024540.html
Copyright © 2011-2022 走看看