Computer >> Máy Tính >  >> Lập trình >> C ++

Tìm tổng số năm riêng biệt từ một chuỗi trong C ++


Trong hướng dẫn này, chúng ta sẽ thảo luận về một chương trình để tìm tổng số năm riêng biệt từ một chuỗi.

Đối với điều này, chúng tôi sẽ được cung cấp một chuỗi chứa ngày tháng ở định dạng ‘DD-MM-YYYY’. Nhiệm vụ của chúng ta là tìm số năm riêng biệt được đề cập trong chuỗi đã cho.

Ví dụ

#include <bits/stdc++.h>
using namespace std;
//calculating the distinct years mentioned
int calculateDifferentYears(string str) {
   unordered_set<string> differentYears;
   string str2 = "";
   for (int i = 0; i < str.length(); i++) {
      if (isdigit(str[i])) {
         str2.push_back(str[i]);
      }
      if (str[i] == '-') {
         str2.clear();
      }
      if (str2.length() == 4) {
         differentYears.insert(str2);
         str2.clear();
      }
   }
   return differentYears.size();
}
int main() {
   string sentence = "I was born on 22-12-1955."
   "My sister was born on 34-06-2003 and my mother on 23-03-1940.";
   cout << calculateDifferentYears(sentence);
   return 0;
}

Đầu ra

3