From b2c871ce9a0ae301aa6ed7b30721721614c735d7 Mon Sep 17 00:00:00 2001 From: Eatswap Date: Sat, 29 Oct 2022 18:18:34 +0800 Subject: [PATCH] add: 221029-CN --- cpp/2210/221029-CN.cpp | 21 +++++++++++++++++++++ cpp/2210/CMakeLists.txt | 2 +- 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 cpp/2210/221029-CN.cpp diff --git a/cpp/2210/221029-CN.cpp b/cpp/2210/221029-CN.cpp new file mode 100644 index 0000000..e42da1a --- /dev/null +++ b/cpp/2210/221029-CN.cpp @@ -0,0 +1,21 @@ +#include +#include +#include + +/** + * 1773. Count Items Matching a Rule + * + * You are given an array items, where each items[i] = [typei, colori, namei] describes the type, color, and name of the ith item. You are also given a rule represented by two strings, ruleKey and ruleValue. + * The ith item is said to match the rule if one of the following is true: + * - ruleKey == "type" and ruleValue == typei. + * - ruleKey == "color" and ruleValue == colori. + * - ruleKey == "name" and ruleValue == namei. + * Return the number of items that match the given rule. + */ + +class Solution { +public: + static int countMatches(const std::vector>& i, const std::string& k, const std::string& v) { + return std::count_if(i.begin(), i.end(), [&](auto&& x) { return x[(4 - k[0]) & 3] == v; }); + } +}; diff --git a/cpp/2210/CMakeLists.txt b/cpp/2210/CMakeLists.txt index 5dc51c2..e08ffab 100644 --- a/cpp/2210/CMakeLists.txt +++ b/cpp/2210/CMakeLists.txt @@ -3,4 +3,4 @@ PROJECT(2210) SET(CMAKE_CXX_STANDARD 23) -ADD_EXECUTABLE(2210 221029.cpp) +ADD_EXECUTABLE(2210 221029-CN.cpp)