1
0

3 Commits 710191e357 ... 40c28cf4ea

Autor SHA1 Nachricht Datum
  Vinicius Teshima 40c28cf4ea Adding solution for 2108 vor 10 Monaten
  Vinicius Teshima 5d7d142ba7 Adding even faster solution for 2006 vor 10 Monaten
  Vinicius Teshima 732dcaccdd Adding solution for 2006 vor 10 Monaten
5 geänderte Dateien mit 100 neuen und 0 gelöschten Zeilen
  1. 1 0
      .python-version
  2. 45 0
      C++/2108.cpp
  3. 7 0
      C++/build.sh
  4. 40 0
      Python/2006.py
  5. 7 0
      Python/build.sh

+ 1 - 0
.python-version

@@ -0,0 +1 @@
+3.13

+ 45 - 0
C++/2108.cpp

@@ -0,0 +1,45 @@
+#include <iostream>
+#include <cstdint>
+#include <vector>
+#include <string>
+
+using std::vector;
+using std::string;
+
+class Solution {
+public:
+    string firstPalindrome(vector<string>& words) {
+        auto isPalindrome = [](string s) {
+            unsigned int i = 0;
+            unsigned int j = s.size() - 1;
+            while ( j > i ) {
+                if ( s[i] != s[j] ) { return false; }
+                ++i; --j;
+            }
+            return true;
+        };
+        auto len = words.size();
+        auto i = len;
+        for ( i = 0; i < len; ++i ) {
+            if ( isPalindrome(words[i]) ) { return words[i]; }
+        }
+        return "";
+    }
+};
+
+void r(vector<string>& w) {
+    std::cout << "Solution().firstPalindrome([";
+    for ( uint64_t i = 0; i < w.size(); ++i ) {
+        if ( i == 0 ) { std::cout << "\"" << w[i] << "\""; continue; }
+        std::cout << ", \"" << w[i] << "\"";
+    }
+    std::cout << "]) = \"" << Solution().firstPalindrome(w) << "\"";
+};
+
+int main(void) {
+
+    vector<string> w1 = {"abc", "car", "ada", "racecar", "cool"};
+    r(w1);
+
+    return 0;
+}

+ 7 - 0
C++/build.sh

@@ -0,0 +1,7 @@
+#!/bin/sh
+
+newest_file="$(find ./ -type f -printf "%T@ %p\n" | sort -n | cut -d' ' -f 2- | tail -n 1)"
+
+set -x
+g++ -O0 -ggdb -Wall -Wextra -Werror $newest_file -o /tmp/out || exit 1
+/tmp/out

+ 40 - 0
Python/2006.py

@@ -0,0 +1,40 @@
+# 2006. Count Number of Pairs With Absolute Difference K
+
+import sys
+from typing import List
+
+
+class Solution:
+    def countKDifference(self, nums: List[int], k: int) -> int:
+        r: int = 0
+        i: int = 0
+        l: int = len(nums)
+        while i < l:
+            j: int = i
+            while j < l:
+                if abs(nums[i] - nums[j]) == k:
+                    r += 1
+                    pass
+                j += 1
+                pass
+            i += 1
+            pass
+        return r
+    pass
+
+
+def main() -> int:
+    def r(ns: List[int], k: int) -> None:
+        print(
+            f"Solution().countKDifference({ns}, {k}) = {Solution().countKDifference(ns, k)}"
+        )
+        pass
+
+    r([1, 2, 2, 1], 1)
+    r([1, 3], 3)
+    r([3, 2, 1, 5, 4], 2)
+    return 0
+
+
+if __name__ == "__main__":
+    sys.exit(main())

+ 7 - 0
Python/build.sh

@@ -0,0 +1,7 @@
+#!/bin/sh
+
+newest_file="$(find ./ -type f -printf "%T@ %p\n" | sort -n | cut -d' ' -f 2- | tail -n 1)"
+
+set -x
+python $newest_file
+