C++ Chanel
616 subscribers
44 photos
6 videos
53 links
Download Telegram
Как создан Google?

1. Мобильные устройства (телефоны):
• Операционная система: Android.
• Языки программирования: Java и Kotlin.
• GUI разработка: Используются Java и Kotlin для создания пользовательского интерфейса на Android.
2. Серверная часть:
• Языки программирования: Java, C++, Python.
• Технологии: Разнообразные фреймворки и инструменты.
• Web-интерфейс (GUI для веб-приложений): HTML, CSS, JavaScript.
3. Графический интерфейс на компьютерах:
• Операционные системы: Разнообразные, включая Windows, macOS и Linux.
• Языки программирования: Зависит от конкретной платформы и приложения, но может включать C++, Java, C#, Swift и другие.
• Технологии: Используются различные фреймворки и библиотеки, такие как Qt, WPF (Windows Presentation Foundation), Cocoa (для macOS) и другие.
👍1
Зачем нужен указатель на указатель?
Например чтобы передать параметр по ссылке в вашу функцию,а еще для динамического виделения памяти.С помощью такого метода можно изменять значение указателя в самой функции.
В чем отличие list от vector в С++?

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

Вообще я всегда использую vector и list всегда казался мне более трудным в понимании.
фишки для C++
1.Вместо while можно использовать for.В больших компаниях запрещяют использовать while и вместо него вот такой красиво написаный цыкл.
2. Для того чтобы не писать по сто раз long long можно сделать его директивом.Оно сократит вам очень много времени.
3.Константы max и min.Вместо того чтобы писать pow(2,31) много раз можно также сократить код.
Зачем нужен HTTP если есть HTTPS?
HTTPs — это расширение для протокола HTTP, которое делает его безопасным. Дело в том, что данные передаются по HTTP в открытом виде. Это создаёт риск раскрыть конфиденциальную информацию, если кто-то перехватит трафик. HTTPs решает эту проблему, добавляя в изначальный протокол возможность шифрования данных.
Задача на сегодня:
https://www.eolymp.com/uk/problems/10926
(такая была на тестовом олимпиадном задании),решение кину завтра
👍1
Решение:

#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;
}
Очень интересная задача,сегодня была на олимпиаде:
дается числа m и n:
m ширина
n высота
вывести рисунок,например:
m=4
n=6
“x..x”
“.xx.”
“.xx.”
“x..x”
“.xx.”
“.xx.”
Решение как всегда кину сегодня вечером


Накидайте 🔥🔥🔥 если вам интересный такой формат
🔥4🫡1
https://youtu.be/8jLOx1hD3_o?si=50jxQOEep2rWiI5T кто-то просил выложить видео сюда,это очень класное видео которое охватывает все
C++ Chanel
Очень интересная задача,сегодня была на олимпиаде: дается числа m и n: m ширина n высота вывести рисунок,например: m=4 n=6 “x..x” “.xx.” “.xx.” “x..x” “.xx.” “.xx.” Решение как всегда кину сегодня вечером Накидайте 🔥🔥🔥 если вам интересный такой формат
Решение(в коменты кидали на пайтоне)
#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;
}
👏1
Будет ли вам интересно если я буду выставлять про микроконтроллеры?(Ведь это тоже С++)
Anonymous Poll
86%
Да
14%
Нет
C++ Chanel
Интересная задача: https://leetcode.com/problems/reverse-integer/ Как всегда решение кину чуть-чуть позже
Решение:

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;
}
};
Решение:
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;
}
};
👍2
Что такое тернарный оператор и как его использовать ?

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


Так мы написали используя if,else.А теперь с тернарным оператором:

int temperature = 20;
temperature>0?cout<<"HOT" : "COLD";
👍7