ar
Feedback
C++ Chanel

C++ Chanel

الذهاب إلى القناة على Telegram
655
المشتركون
لا توجد بيانات24 ساعات
-27 أيام
-530 أيام
أرشيف المشاركات
Решение:
class Solution {
public:
    int maxArea(vector<int>& height) {
        int left = 0;
        int right = height.size()-1;
        int result = 0;
        for(;left<right;){
            int temp = min(height[left],height[right])*(right-left);
            result = max(result,temp);
            if(height[left] < height[right])
                left++;
            else right--;
        }

        return result;
    }
};

Решение:
class Solution {
public:
    bool buddyStrings(string s, string goal) {
        if(s == goal)return false;
        sort(s.begin(),s.end());
        sort(goal.begin(),goal.end());

        if(s.size()!=goal.size())return false;

        for(int i = 0;i<s.size();i++){
            if(s[i]!=goal[i])return false;
        }

        return true;
    }
};

Что такое тернарный оператор и как его использовать ? По факту тернарный оператор это тоже самое что и if else.Но с другим синтаксисом.Например:
int temperature = 20;
if(temperature>0)cout<<"HOT";
else cout<<"COLD";
Так мы написали используя if,else.А теперь с тернарным оператором:
int temperature = 20;
temperature>0?cout<<"HOT" :  "COLD";

Задача на сегодня: https://leetcode.com/problems/buddy-strings/

Решение:
class Solution {
public:
    string largestGoodInteger(string num) {
        if(num.size()==3){
            if(num[0] == num[1] && num[2] == num[0])return num;
        }
        vector<string> res;
        string temp;
        temp += num[0];
        string result = "-1";
        for(int i = 0;i<num.size()-1;i++){
            if(num[i] == num[i+1]){
                temp += num[i+1];
                if(temp.size() == 3 && stoi(temp)>stoi(result))result = temp; 
            }   
            else temp = num[i+1];
        }
        if(result == "-1")return "";
        return result;
    }
};

Задача на сегодня: https://leetcode.com/problems/largest-3-same-digit-number-in-string/ Решение кину вечером

Решение:
class Solution {
public:
    int reverse(long x) {
        long result = 0;
        bool plural = x>0;
        if(!plural)x*=-1;
        while(x>0){
            result+=x%10*10;
            result*=10;
            x/=10;
        }
        result/=100;
        if(result>pow(2,31)-1||result<-pow(2,31))return 0;
        if(!plural)return result*-1;
        return result;       
    }
};

Будет ли вам интересно если я буду выставлять про микроконтроллеры?(Ведь это тоже С++)
Anonymous voting

Интересная задача: https://leetcode.com/problems/reverse-integer/ Как всегда решение кину чуть-чуть позже

Решение(в коменты кидали на пайтоне)
#include <iostream>
using namespace std;

int main() {
    int m, n;
    cin >> n >> m;
    string column;
    int left = 0;
    int right = m - 1;
    for (int i = 0; i < m; i++)column += '.';
    for (int i = 0; i < n; i++) {
        string copyColumn = column;
        for (int j = 0; j < m; j++) {
            if (j == left)copyColumn[left] = 'x';
            if (j == right)copyColumn[right] = 'x';
        }
        right--;
        left++;
        if (right == 0)right = m-1;
        if (left == m-1)left = 0;
        cout << copyColumn << endl;
    }
    return 0;
}

https://youtu.be/8jLOx1hD3_o?si=50jxQOEep2rWiI5T кто-то просил выложить видео сюда,это очень класное видео которое охватывает все

Очень интересная задача,сегодня была на олимпиаде: дается числа m и n: m ширина n высота вывести рисунок,например: m=4 n=6 “x..x” “.xx.” “.xx.” “x..x” “.xx.” “.xx.” Решение как всегда кину сегодня вечером Накидайте 🔥🔥🔥 если вам интересный такой формат

Решение:
#include <iostream>
#include <vector>
using namespace std;
#define ll long long 
int main() {
    ll n = 0,result = 0;
    cin >> n;
    vector<ll[2]> sort(n);
    vector<ll>xref;
    vector<ll> yref;
    for (ll i = 0; i < n; i++) {
        ll x, y;
        cin >> x >> y;
        sort[i][0] = x;
        sort[i][1] = y;
        if (i == 0) { xref.push_back(x); yref.push_back(y); }
        ll temp = 0;
        for (ll j = 0; j < xref.size(); j++) {
            if (xref[j] != x)temp++;
            if (temp == xref.size()) xref.push_back(x);
        }
        temp = 0;
        for (ll j = 0; j < yref.size(); j++) {
            if (yref[j] != y)temp++;
            if (temp == yref.size()) yref.push_back(y);
        }
    }

    for (ll i = 0; i < xref.size(); i++) {
        vector<ll> arr;
        ll dots = xref[i];
        ll counter = 0;
        for (ll j = 0; j < sort.size(); j++) {
            if (sort[j][0] == dots) { 
                counter++;
            }
        }
        if (counter == 3)result++;
        else if (counter > 3)result += counter / 3;
    }
    for (ll i = 0; i < yref.size(); i++) {
        vector<ll> arr;
        ll dots = yref[i];
        ll counter = 0;
        for (ll j = 0; j < sort.size(); j++) {
            if (sort[j][1] == dots) {
                counter++;
            }
        }
        if (counter == 3)result++;
        else if (counter > 3)result += counter / 3;
    }
    cout << result;
    return 0;
}

Задача на сегодня: https://www.eolymp.com/uk/problems/10926 (такая была на тестовом олимпиадном задании),решение кину завтра

Зачем нужен HTTP если есть HTTPS? HTTPs — это расширение для протокола HTTP, которое делает его безопасным. Дело в том, что данные передаются по HTTP в открытом виде. Это создаёт риск раскрыть конфиденциальную информацию, если кто-то перехватит трафик. HTTPs решает эту проблему, добавляя в изначальный протокол возможность шифрования данных.

фишки для C++ 1.Вместо while можно использовать for.В больших компаниях запрещяют использовать while и вместо него вот такой
+2
фишки для C++ 1.Вместо while можно использовать for.В больших компаниях запрещяют использовать while и вместо него вот такой красиво написаный цыкл. 2. Для того чтобы не писать по сто раз long long можно сделать его директивом.Оно сократит вам очень много времени. 3.Константы max и min.Вместо того чтобы писать pow(2,31) много раз можно также сократить код.

https://basecamp.eolymp.com/ru/problems/3 Очень интересная задача

В чем отличие list от vector в С++? list это обычный linked-list (что-бы добраться до N-го элемента, нужно пройти по всем предыдущим), a vector, это по сути массив в традиционном понимании (fixed length, random access). Если вам нужен random-access используйте vector. Вообще я всегда использую vector и list всегда казался мне более трудным в понимании.

Зачем нужен указатель на указатель? Например чтобы передать параметр по ссылке в вашу функцию,а еще для динамического виделения памяти.С помощью такого метода можно изменять значение указателя в самой функции.