From 5f9b87c91d3b40381b41cee53a4b718181271627 Mon Sep 17 00:00:00 2001 From: chayan das Date: Thu, 26 Jun 2025 12:54:41 +0530 Subject: [PATCH] Create 2311. Longest Binary Subsequence Less Than or Equal to K --- ...t Binary Subsequence Less Than or Equal to K | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 2311. Longest Binary Subsequence Less Than or Equal to K diff --git a/2311. Longest Binary Subsequence Less Than or Equal to K b/2311. Longest Binary Subsequence Less Than or Equal to K new file mode 100644 index 0000000..d799db7 --- /dev/null +++ b/2311. Longest Binary Subsequence Less Than or Equal to K @@ -0,0 +1,17 @@ +class Solution { +public: + int longestSubsequence(string s, int k) { + int res = 0; + long long cur = 0; + for(int i = s.size() - 1; i >= 0; --i) { + char c = s[i]; + if(c == '0') { + res++; + } else if(res < 31 && cur + (1LL << res) <= k) { + cur += 1LL << res; + res++; + } + } + return res; + } +};