Tp hunters cpp
💬 #چالش 🟥درجه سختی : متوسط 🟢لطفا سوالات , نظرات و کد های خود را برای ما کامنت کنید.
🧠 #کد_چالش
حل توسط : چند نفر از دوستان, اما ساده و بهترین کد کد زیر میباشد.
حل توسط : چند نفر از دوستان, اما ساده و بهترین کد کد زیر میباشد.
// C++ implementation of the approach🟢لطفا سوالات, نظرات و کد های خود را برای ما کامنت کنید.
#include <bits/stdc++.h>
using namespace std;
// Function to return the count of
// valid indices pairs
int countPairs(string s1, int n1, string s2, int n2)
{
// To store the frequencies of characters
// of string s1 and s2
int freq1[26] = { 0 };
int freq2[26] = { 0 };
// To store the count of valid pairs
int i, count = 0;
// Update the frequencies of
// the characters of string s1
for (i = 0; i < n1; i++)
freq1[s1[i] - 'a']++;
// Update the frequencies of
// the characters of string s2
for (i = 0; i < n2; i++)
freq2[s2[i] - 'a']++;
// Find the count of valid pairs
for (i = 0; i < 26; i++)
count += (min(freq1[i], freq2[i]));
return count;
}
// Driver code
int main()
{
string s1 = "geeksforgeeks", s2 = "platformforgeeks";
int n1 = s1.length(), n2 = s2.length();
cout << countPairs(s1, n1, s2, n2);
return 0;
}
Tp hunters cpp
🧠 #کد_چالش حل توسط : چند نفر از دوستان, اما ساده و بهترین کد کد زیر میباشد. // C++ implementation of the approach #include <bits/stdc++.h> using namespace std; // Function to return the count of // valid indices pairs int countPairs(string s1, int n1, string…
💬 #شرح_چالش
توضیحات : محمدصالح حق محمدلو
ما درواقع دوتا رشته داریم که میخوایم تمام کارکتر های مشترک بین اون دوتارو بشمریم. یعنی باید
برقرار باشه
درابتدا ما میایم فرکانس(اشتراک/فراوانی) تمام کارکتر های هر دو رشته رو میشمریم.
حالا برای تمام کارکتر ها اگر فرکانس(اشتراک/فراوانی) این کارکتر در رشته s1 برابر با freq1 و در رشته s2 برابر با freq2 باشد، نتیجه مجموع زوج های مشترک در نتیجه تابع
قرار میگیرد.
حال مجموع این مقدار برای همه کارکتر ها جواب مورد نظر ماست.
این یک تابع خطی از نظر مرتبه زمانی bigO میباشد و یک تابع بهینه است👌
🟢لطفا سوالات، نظرات و کد های خود را برای ما کامنت کنید.
توضیحات : محمدصالح حق محمدلو
ما درواقع دوتا رشته داریم که میخوایم تمام کارکتر های مشترک بین اون دوتارو بشمریم. یعنی باید
s1[i] = s2[j]برقرار باشه
درابتدا ما میایم فرکانس(اشتراک/فراوانی) تمام کارکتر های هر دو رشته رو میشمریم.
حالا برای تمام کارکتر ها اگر فرکانس(اشتراک/فراوانی) این کارکتر در رشته s1 برابر با freq1 و در رشته s2 برابر با freq2 باشد، نتیجه مجموع زوج های مشترک در نتیجه تابع
min(freq1,freq2)قرار میگیرد.
حال مجموع این مقدار برای همه کارکتر ها جواب مورد نظر ماست.
این یک تابع خطی از نظر مرتبه زمانی bigO میباشد و یک تابع بهینه است👌
🟢لطفا سوالات، نظرات و کد های خود را برای ما کامنت کنید.
Forwarded from Tp carbon language (No Name!)
چرا کربن ساخته شد؟
زبان سی پلاس پلاس همچنان یک زبان حیاتی و غالب برای نرم افزار های پرفورمنس محور ، با پایگاه های کد زیاد و سرمایه گذاری های زیاد و رو به رشد است. با این حال برای بهبود و برطرف کردن نیاز های توسعه دهندگان در تلاش است،اما همانطور که در بالاتر گفتیم در بخش کوچکی به دلیل سالها مشکلات فنی به مشکل خورده است.
بهبود کردن و آپدیت کردن سی پلاس پلاس بسیار دشوار است، هم به دلیل مشکلات فنی و هم به دلیل چالش هایی که در فرایند تکامل آن وجود دارد.
بهترین راه برای رسیدگی به این مشکل جلوگیری از ارث بری مستقیم C به ++C است! و در عوض باید از زبانی که با پایه های قوی و محکم و یک سیستم مدرن و سازماندهی کد ماژولار و سینتکسی ساده است استفاده کرد.
کربن از دیدگاه بنیادی یک زبان جایگزینی برای سی پلاس پلاس میباشد، به جای تلاش برای تکامل تدریجی سی پلاس پلاس! این زبان قابلیت همکاری و ترکیب با cpp و همچنین پذیرش و مهاجرت در مقیاس بزرگ برای پایگاه های کد و توسعه دهندگان موجود در cpp طراحی شده است. زبان جایگزین برای ++C باید ویژگی های زیر را داشته باشد:
⬅️پرفورمنس و انرژی نزدیک با سی پلاس پلاس
⬅️قابلیت همکاری یکپارچه و دوجهته با سی پلاس پلاس
⬅️یادگیری آسان
⬅️قابل مقایسه و چندسکویی
⬅️مهاجرت مقیاس پذیر از زبانی به زبانی دیگر
چند زبان وجود دارند که از این مدل برای ساخت اکوسیستم ها استفاده کرده اند و کربن نقش دارد نقش مشابهی را در اکوسیستم سی پلاس پلاس ایفا کند.
Javascript -> Typescript
Java -> Kotlin
C++ -> Carbon
🟢لطفا سوالات، نظرات و کد های خود را برای ما کامنت کنید.
@carbon_google
زبان سی پلاس پلاس همچنان یک زبان حیاتی و غالب برای نرم افزار های پرفورمنس محور ، با پایگاه های کد زیاد و سرمایه گذاری های زیاد و رو به رشد است. با این حال برای بهبود و برطرف کردن نیاز های توسعه دهندگان در تلاش است،اما همانطور که در بالاتر گفتیم در بخش کوچکی به دلیل سالها مشکلات فنی به مشکل خورده است.
بهبود کردن و آپدیت کردن سی پلاس پلاس بسیار دشوار است، هم به دلیل مشکلات فنی و هم به دلیل چالش هایی که در فرایند تکامل آن وجود دارد.
بهترین راه برای رسیدگی به این مشکل جلوگیری از ارث بری مستقیم C به ++C است! و در عوض باید از زبانی که با پایه های قوی و محکم و یک سیستم مدرن و سازماندهی کد ماژولار و سینتکسی ساده است استفاده کرد.
کربن از دیدگاه بنیادی یک زبان جایگزینی برای سی پلاس پلاس میباشد، به جای تلاش برای تکامل تدریجی سی پلاس پلاس! این زبان قابلیت همکاری و ترکیب با cpp و همچنین پذیرش و مهاجرت در مقیاس بزرگ برای پایگاه های کد و توسعه دهندگان موجود در cpp طراحی شده است. زبان جایگزین برای ++C باید ویژگی های زیر را داشته باشد:
⬅️پرفورمنس و انرژی نزدیک با سی پلاس پلاس
⬅️قابلیت همکاری یکپارچه و دوجهته با سی پلاس پلاس
⬅️یادگیری آسان
⬅️قابل مقایسه و چندسکویی
⬅️مهاجرت مقیاس پذیر از زبانی به زبانی دیگر
چند زبان وجود دارند که از این مدل برای ساخت اکوسیستم ها استفاده کرده اند و کربن نقش دارد نقش مشابهی را در اکوسیستم سی پلاس پلاس ایفا کند.
Javascript -> Typescript
Java -> Kotlin
C++ -> Carbon
🟢لطفا سوالات، نظرات و کد های خود را برای ما کامنت کنید.
@carbon_google
#نکته
فرض کنید میخواید یک رشته رو از کلاس String توی پارامتر های تابعتون استفاده کنید به این شکل.
به دلیل اینکه نوع string درواقع یک کلاس هست و ما ارسال با مقدار داریم باعث میشه یک کپی از پارامتر ایجاد بشه! و چون string یک کلاس سنگینیه این کار اصلا درست و به صرفه نیست چون وقتی تابع صدا میشه یک کپی از اون پارامتر ایجاد میشه.
حالا برای اینکه این اتفاق نیفته ما اون رو با مرجع یا Refference میفرستیم به شکل زیر(اگر پارامتر const باشه هم که دیگه عالیه😎)
حالا دیگه کپی ایجاد نمیشه. سعی کنید کلاس هاتون رو توی پارامتر تابع تا جایی که ممکنه با const refference ارسال کنید.
🟢لطفا سوالات , نظرات و کد های خود را برای ما ارسال کنید.
فرض کنید میخواید یک رشته رو از کلاس String توی پارامتر های تابعتون استفاده کنید به این شکل.
void func(string firstName)
به دلیل اینکه نوع string درواقع یک کلاس هست و ما ارسال با مقدار داریم باعث میشه یک کپی از پارامتر ایجاد بشه! و چون string یک کلاس سنگینیه این کار اصلا درست و به صرفه نیست چون وقتی تابع صدا میشه یک کپی از اون پارامتر ایجاد میشه.
حالا برای اینکه این اتفاق نیفته ما اون رو با مرجع یا Refference میفرستیم به شکل زیر(اگر پارامتر const باشه هم که دیگه عالیه😎)
void func(string &firstName)
حالا دیگه کپی ایجاد نمیشه. سعی کنید کلاس هاتون رو توی پارامتر تابع تا جایی که ممکنه با const refference ارسال کنید.
🟢لطفا سوالات , نظرات و کد های خود را برای ما ارسال کنید.
💬 #چالش
🟥درجه سختی: آسان ( به زبان دلخواه خود حل کنید)
🟢لطفا سوالات, نظرات و کد های خود را برای ما کامنت کنید.
🟥درجه سختی: آسان ( به زبان دلخواه خود حل کنید)
🟢لطفا سوالات, نظرات و کد های خود را برای ما کامنت کنید.
🧠 #کد_چالش
حل توسط : آقای SIN4M
🟢لطفا سوالات، نظرات و کدهای خود را برای ما ارسال کنید.
حل توسط : آقای SIN4M
#include <algorithm>
bool isInOrder(std::string& s){
std::string norm_str{std::tolower(s)};
return std::is_sorted(norm_str.begin(), norm_str.end());
}
🟢لطفا سوالات، نظرات و کدهای خود را برای ما ارسال کنید.
Tp hunters cpp
💬 #چالش 🟥درجه سختی: آسان ( به زبان دلخواه خود حل کنید) 🟢لطفا سوالات, نظرات و کد های خود را برای ما کامنت کنید.
💬 #شرح_چالش
توضیحات : آقای SIN4M
این کد از متد is_sorted کتابخونه الگوریتم استفاده میکنه، که همونطور که از اسمش معلومه برا زمانیه که میخوایم ببینیم یه آرایه سورت شده هست یا نه. اینجا چون string داریم و کد اسکی حروف بزرگ و کوچک فرق داره، اول همرو به uppercase با lowercase تبدیل میکنیم که همه یک دست باشن، بعدش از اون متد is_sorted استفاده میکنیم!
🟢لطفا سوالات، نظرات و کدهای خود را برای ما کامنت کنید.
توضیحات : آقای SIN4M
این کد از متد is_sorted کتابخونه الگوریتم استفاده میکنه، که همونطور که از اسمش معلومه برا زمانیه که میخوایم ببینیم یه آرایه سورت شده هست یا نه. اینجا چون string داریم و کد اسکی حروف بزرگ و کوچک فرق داره، اول همرو به uppercase با lowercase تبدیل میکنیم که همه یک دست باشن، بعدش از اون متد is_sorted استفاده میکنیم!
🟢لطفا سوالات، نظرات و کدهای خود را برای ما کامنت کنید.
Tp hunters cpp
#نکته فرض کنید میخواید یک رشته رو از کلاس String توی پارامتر های تابعتون استفاده کنید به این شکل. void func(string firstName) به دلیل اینکه نوع string درواقع یک کلاس هست و ما ارسال با مقدار داریم باعث میشه یک کپی از پارامتر ایجاد بشه! و چون string یک کلاس…
Media is too big
VIEW IN TELEGRAM
#نکته
همونطور که قول دادیم بعد از آموزشهای ابتدایی چنل یواش یواش به سمت سی پلاس مدرن میریم.
یکی از ویژگی های c++17 مرتبط به رشته ها در فیلم گفته شده
🟢لطفا سوالات، نظرات و کد های خود را برای ما کامنت کنید.
همونطور که قول دادیم بعد از آموزشهای ابتدایی چنل یواش یواش به سمت سی پلاس مدرن میریم.
یکی از ویژگی های c++17 مرتبط به رشته ها در فیلم گفته شده
🟢لطفا سوالات، نظرات و کد های خود را برای ما کامنت کنید.
Media is too big
VIEW IN TELEGRAM
#ساختمان_کوچولو ساختمان داده ها
مدرس : محمدصالح حق محمدلو
قسمت 1: آشنایی کلی با دوره، الگوریتم تابع پیچیدگی، مرتبه اجرایی برخی دستورات و نمودار مقایسه توابع
تکلیف: تفاوت برنامه و الگوریتم را کامنت کنید.
🟢لطفا سوالات، نظرات و کدهای خود را برای ما کامنت کنید.
مدرس : محمدصالح حق محمدلو
قسمت 1: آشنایی کلی با دوره، الگوریتم تابع پیچیدگی، مرتبه اجرایی برخی دستورات و نمودار مقایسه توابع
تکلیف: تفاوت برنامه و الگوریتم را کامنت کنید.
🟢لطفا سوالات، نظرات و کدهای خود را برای ما کامنت کنید.
Media is too big
VIEW IN TELEGRAM
#ساختمان_کوچولو ساختمان داده ها
مدرس : محمدصالح حق محمدلو
قسمت 2: بیگ O ، نماد تِتا، و نماد اومگا، و مقایسه نمودار ها و حد های بینهایت.
تکلیف : در فیلم تکلیف گفته شده.
🟢لطفا سوالات، نظرات و کدهای خود را برای ما کامنت کنید.
مدرس : محمدصالح حق محمدلو
قسمت 2: بیگ O ، نماد تِتا، و نماد اومگا، و مقایسه نمودار ها و حد های بینهایت.
تکلیف : در فیلم تکلیف گفته شده.
🟢لطفا سوالات، نظرات و کدهای خود را برای ما کامنت کنید.
Media is too big
VIEW IN TELEGRAM
#ساختمان_کوچولو ساختمان داده ها
مدرس : محمدصالح حق محمدلو
قسمت 3 : مرتبه اجرایی حلقه ها، حلقه های single و حلقه های وابسته به ورودی
تکلیف: تکلیف در ویدیو گفته شده کامنت شود.
🟢لطفا سوالات، نظرات و کدهای خود را کامنت کنید.
مدرس : محمدصالح حق محمدلو
قسمت 3 : مرتبه اجرایی حلقه ها، حلقه های single و حلقه های وابسته به ورودی
تکلیف: تکلیف در ویدیو گفته شده کامنت شود.
🟢لطفا سوالات، نظرات و کدهای خود را کامنت کنید.
Media is too big
VIEW IN TELEGRAM
#ساختمان_کوچولو ساختمان داده ها
مدرس : محمدصالح حق محمدلو
قسمت 4: مرتبه اجرایی حلقه های تو در تو و حلقه های افزایشی و کاهشی لگاریتمی
تکلیف : در انتهای ویدیو گفته شده
🟢لطفا سوالات، نظرات و کدهای خود را برای ما کامنت کنید.
مدرس : محمدصالح حق محمدلو
قسمت 4: مرتبه اجرایی حلقه های تو در تو و حلقه های افزایشی و کاهشی لگاریتمی
تکلیف : در انتهای ویدیو گفته شده
🟢لطفا سوالات، نظرات و کدهای خود را برای ما کامنت کنید.
Media is too big
VIEW IN TELEGRAM
#ساختمان_کوچولو ساختمان داده ها
مدرس: محمدصالح حق محمدلو
قسمت 5: تدریس از روی رفرنس زبان انگلیسی به همراه مثال عملی در دنیای واقعی از پیچیدگی زمانی
🟢لطفا سوالات، نظرات و کدهای خود را برای ما کامنت کنید.
مدرس: محمدصالح حق محمدلو
قسمت 5: تدریس از روی رفرنس زبان انگلیسی به همراه مثال عملی در دنیای واقعی از پیچیدگی زمانی
🟢لطفا سوالات، نظرات و کدهای خود را برای ما کامنت کنید.
با توجه به فعالیت جدید ما شما کدام برنامه را میپسندید؟
Anonymous Poll
77%
رورانه یک پست اموزشی
23%
هر یک روز در میان دو پست
🟩 سی پلاس پلاس چیست؟
🔹 سی پلاس پلاس یک زبان چند پلتفرمی است که برای ایجاد برنامه های کاربردی با کارایی بالا استفاده میشود.
🔹 سی پلاس پلاس توسط Bjarne Stroustrup، به عنوان پسوند زبان C توسعه داده شد.
🔹 سی پلاس پلاس سطح بالایی از کنترل بر منابع سیستم و حافظه را به برنامه نویسان می دهد.
🔹 این زبان 4 بار در سال های 2011، 2014، 2017 و 2020 به C++11، C++14، C++17، C++20 به روز شد.
━━━━━━━━━━━━━━━
🆔 @tphunterscpp
🆔 @Tphunterscpp_Group
🔹 سی پلاس پلاس یک زبان چند پلتفرمی است که برای ایجاد برنامه های کاربردی با کارایی بالا استفاده میشود.
🔹 سی پلاس پلاس توسط Bjarne Stroustrup، به عنوان پسوند زبان C توسعه داده شد.
🔹 سی پلاس پلاس سطح بالایی از کنترل بر منابع سیستم و حافظه را به برنامه نویسان می دهد.
🔹 این زبان 4 بار در سال های 2011، 2014، 2017 و 2020 به C++11، C++14، C++17، C++20 به روز شد.
━━━━━━━━━━━━━━━
🆔 @tphunterscpp
🆔 @Tphunterscpp_Group
🟩 چرایی استفاده از زبان CPP یا سی پلاس پلاس:
سی پلاس پلاس یکی از زبان های محبوب و بسیار پر استفاده در دنیاست. سی پلاس پلاس را میتوانید امروزه در سیستم عامل ها و برنامه های گرافیکی و یا تعبیه شده ببینید.
سی پلاس پلاس یک زبان کاملا OOP یا شی گرا میباشد! که به برنامه نویس این امکان را میدهد که برنامه های قابل استفاده مجدد و با ارزش بسیار بالا بنویسد.
سی پلاس پلاس یک زبان portable است به این معنا که میتوان از ان در تولید برنامه هایی استفاده کرد که با چندین پلتفرم سازگار باشد
مهم ترین دلیلش هم اینه که هم سادس و FUN :) و بسیار شبیه زبان های C و سی شارپ و یا جاوا هست که به برنامه نویسان این امکان را میدهد که راحت تر بین این زبان ها سوییچ کنند!
━━━━━━━━━━━━━━━
🆔 @tphunterscpp
🆔 @Tphunterscpp_Group
سی پلاس پلاس یکی از زبان های محبوب و بسیار پر استفاده در دنیاست. سی پلاس پلاس را میتوانید امروزه در سیستم عامل ها و برنامه های گرافیکی و یا تعبیه شده ببینید.
سی پلاس پلاس یک زبان کاملا OOP یا شی گرا میباشد! که به برنامه نویس این امکان را میدهد که برنامه های قابل استفاده مجدد و با ارزش بسیار بالا بنویسد.
سی پلاس پلاس یک زبان portable است به این معنا که میتوان از ان در تولید برنامه هایی استفاده کرد که با چندین پلتفرم سازگار باشد
مهم ترین دلیلش هم اینه که هم سادس و FUN :) و بسیار شبیه زبان های C و سی شارپ و یا جاوا هست که به برنامه نویسان این امکان را میدهد که راحت تر بین این زبان ها سوییچ کنند!
━━━━━━━━━━━━━━━
🆔 @tphunterscpp
🆔 @Tphunterscpp_Group
🟩 تفاوت میان زبان C و ++C
سلام دوست خوبم امروز میخواییم باهم تفاوت این دوتا زبان رو بررسی کنیم ، خیلی خلاصه و کوتاه . شاید برات سوال باشه که خب این دوتا زبان چه فرقی با همدیگه دارن باهام همراه باش تا تفاوت هاشو باهم بررسی کنیم.
در واقع سی پلاس پلاس به عنوان یه افزونه برای زبان C توسعه داده شد و هر دو این زبان ها، تقریبا سینتکس یکسانی دارند.
تفاوت اصلی بین C و ++C اینه که سی پلاس پلاس شامل class و object ها هم میشه درحالیکه C نمیشه.
خب ازین به بعد اگه کسی ازت تفاوت این دوتا زبان رو بپرسه خیلی راحت و سریع میتونی جوابشو بدی. در ادامه قراره خیلی چیزای بیشتر یادبگیریم . منتظر مطالب جذاب و خفنمون باش.
موفق باشی!
━━━━━━━━━━━━━━━
🆔 @tphunterscpp
🆔 @Tphunterscpp_Group
سلام دوست خوبم امروز میخواییم باهم تفاوت این دوتا زبان رو بررسی کنیم ، خیلی خلاصه و کوتاه . شاید برات سوال باشه که خب این دوتا زبان چه فرقی با همدیگه دارن باهام همراه باش تا تفاوت هاشو باهم بررسی کنیم.
در واقع سی پلاس پلاس به عنوان یه افزونه برای زبان C توسعه داده شد و هر دو این زبان ها، تقریبا سینتکس یکسانی دارند.
تفاوت اصلی بین C و ++C اینه که سی پلاس پلاس شامل class و object ها هم میشه درحالیکه C نمیشه.
خب ازین به بعد اگه کسی ازت تفاوت این دوتا زبان رو بپرسه خیلی راحت و سریع میتونی جوابشو بدی. در ادامه قراره خیلی چیزای بیشتر یادبگیریم . منتظر مطالب جذاب و خفنمون باش.
موفق باشی!
━━━━━━━━━━━━━━━
🆔 @tphunterscpp
🆔 @Tphunterscpp_Group
🟩 شروع یادگیری ++C
سلام سلام ! خب بالاخره به شروع یادگیری رسیدیم. خوشحالم از صبوریت که تا اینجا پست های قبلی رو خوندی و با مطالب پایه و اولیه آشنا شدی اگر هم نخوندی بهت پیشنهاد میکنم به پست های قبلی سر بزن و حتما مطالعشون کن.
اما بریم سراغ یادگیری زبان سی پلاس پلاس.
🔸برای استفاده از ++C به دو چیز نیاز داریم :
۱- یک تکست ادیتور ، مثل notepad ، برای نوشتن کد های ++C .
۲- و یک کامپایلر ، مثل GCC ، که کد های C++ را به زبانی ترجمه کنه که کمپیوتر اون هارو بفهمه.
🔹تکست ادیتور ها و کامپایلر های زیادی وجود دارن که ما میتونیم ازشون استفاده کنیم که در ادامه به معرفی IDE خواهیم پرداخت.
خیلی خب تا همینجا واسه امروز کافیه ، الان میدونی به چه چیزهایی نیاز داریم واسه شروع کارمون .
فردا بهت میگم چطور IDE نصب کنی پس صبور باش رفیق!
━━━━━━━━━━━━━━━
🆔 @tphunterscpp
🆔 @Tphunterscpp_Group
سلام سلام ! خب بالاخره به شروع یادگیری رسیدیم. خوشحالم از صبوریت که تا اینجا پست های قبلی رو خوندی و با مطالب پایه و اولیه آشنا شدی اگر هم نخوندی بهت پیشنهاد میکنم به پست های قبلی سر بزن و حتما مطالعشون کن.
اما بریم سراغ یادگیری زبان سی پلاس پلاس.
🔸برای استفاده از ++C به دو چیز نیاز داریم :
۱- یک تکست ادیتور ، مثل notepad ، برای نوشتن کد های ++C .
۲- و یک کامپایلر ، مثل GCC ، که کد های C++ را به زبانی ترجمه کنه که کمپیوتر اون هارو بفهمه.
🔹تکست ادیتور ها و کامپایلر های زیادی وجود دارن که ما میتونیم ازشون استفاده کنیم که در ادامه به معرفی IDE خواهیم پرداخت.
خیلی خب تا همینجا واسه امروز کافیه ، الان میدونی به چه چیزهایی نیاز داریم واسه شروع کارمون .
فردا بهت میگم چطور IDE نصب کنی پس صبور باش رفیق!
━━━━━━━━━━━━━━━
🆔 @tphunterscpp
🆔 @Tphunterscpp_Group