import functools
matrix = [[]]
result = functools.reduce(lambda a,x: a + sum(x), matrix, 0)
print(result)Извините за отступы. Так отображается.
</>, далее выбираешь C++#include <cstdio>
#include <cstdlib>
#include <string>
#include <iostream>
#include <conio.h>
#include <locale>
using namespace std;
const int countMax = 50;
FILE * inputFile, * outputFile;
struct edgeStruct {
int u, v, weight; // ребро (u, v), weight - вес ребра
};
int SortBase(int p, int r, edgeStruct E[]) {
int i, j;
edgeStruct x {}, tmp {};
i = p - 1;
j = r + 1;
x = E[p + rand() % (r - p + 1)];
while (true) {
do {
i++;
} while (E[i].weight < x.weight);
do {
j--;
} while (E[j].weight > x.weight);
if (i < j) {
tmp = E[i];
E[i] = E[j];
E[j] = tmp;
} else break;
}
return j;
}main() или т.п., то это не программа, а только какая-то часть программы.FILE *inputFile, *outputFile; тоже нигде не задействован.#include и с using namespacestruct edgeStructint SortBase(int p, int r, edgeStruct E[])int SortBase(int p, int r, edgeStruct E[])
class edgeStruct():
__slots__ = "u", "v", "weight"
my_edge = edgeStruct()
my_edge.weight = 5
print(my_edge.weight)#include <vector>
#include <algorithm>
...
std::vector<int> array(SIZE);
std::vector<int> array2(array.size());
std::copy(array.begin(), array.end(), array2.begin());
Так как cout присутствует в стандартной библиотеке С++, для которой gcc требуется явное связывание с -lstdc++; g++ по умолчанию связывает стандартную библиотеку.
gcc vector.cpp -lstdc++ -o vector.o
from random import randint
comparison = 0
transfer = 0
arr = [randint(1, 100) for _ in range(10)]
def bubble_sort():
global comparison
global transfer
for i in range(9):
for j in range(9 - i):
comparison += 1
if arr[j] > arr[j + 1]:
arr[j], arr[j + 1] = arr[j + 1], arr[j]
transfer += 1
print('original array\n', *arr)
bubble_sort()
print('bubble sort\n', *arr)
print('comparisons: ', comparison)
print('transfers: ',transfer)
#include <iostream>
#include <map>
#include <string>
#include <iomanip>
using namespace std;
void swap(int& a, int& b)
{
int c = a;
a = b;
b = c;
}
struct info
{
int swapCount = 0;
int compCount = 0;
};
class Counter
{
public:
static Counter& Instance()
{
static Counter tsCounter;
return tsCounter;
}
info& getCount(string fn)
{
return callCount[fn];
}
void print()
{
for(auto& a : callCount)
{
cout << a.first << "\n"
<< setw(15) << left << "swap: " << a.second.swapCount << "\n"
<< setw(15) << left << "compare: " << a.second.compCount << "\n";
}
cout.flush();
}
private:
map<string, info> callCount;
Counter(){}
Counter(const Counter&) = delete;
Counter& operator=(const Counter&) = delete;
};
void mysort(int* a, size_t sz)
{
for(int i = 0; i < sz - 1; ++i)
{
int minIdx = i;
for(int j = i + 1; j < sz; ++j)
{
if(a[j] < a[minIdx]) minIdx = j;
}
swap(a[i], a[minIdx]);
Counter::Instance().getCount(__FUNCTION__).swapCount++;
}
}
int main()
{
int a[] = {2, 5, 6, 77, 1, 32, 45, 77, 12, 13, 14, 15};
mysort(a, sizeof(a)/sizeof(int));
Counter::Instance().print();
}void bubble_sort(int array[SIZE])
{
int transfer = 0;
int comparison = 0;
cout << "\nпузырьковая сортировка" << endl;
for (int i = 0; i < SIZE-1 ; i++)
{
for (int j = SIZE-2; j >= i; j--)
{
comparison++;
if (array[j] > array[j+1])
{
int temp = array[j];
array[j] = array[j+1];
array[j+1] = temp;
transfer++;
}
}
}
cout << "СРАВНЕНИЕ " << comparison << endl;
cout << "ПЕРЕСЫЛКА " << transfer << endl;
} #include <fstream>
#include <ios>
#include <ctime>
#include <iostream>
#include <windows.h>
class MyBitmap {
BITMAPFILEHEADER header_;
BITMAPINFOHEADER info_;
bool loaded_;
char* pixels_;
size_t data_size_;
size_t row_padded_;
public:
MyBitmap(const char* fileName) {
loaded_ = false;
pixels_ = 0;
std::ifstream bmp(fileName, std::ios::binary);
if (!bmp) {
return;
}
bmp.read((char*)&header_, sizeof(header_));
if (!bmp) {
return;
}
if (header_.bfType != 'MB') {
std::cout << "Format is not supported" << std::endl;
return;
}
bmp.read((char*)&info_, sizeof(info_));
if (!bmp) {
return;
}
if (info_.biBitCount != 24) {
std::cout << "Format is not supported" << std::endl;
return;
};
row_padded_ = (info_.biWidth * 3 + 3) & (~3);
int height = info_.biHeight;
data_size_ = row_padded_ * height;
pixels_ = new char[data_size_];
bmp.read(pixels_, data_size_);
if (bmp) {
loaded_ = true;
}
return;
}
bool Save(const char* fileName) {
if (!loaded_) {
return false;
}
std::ofstream f(fileName, std::ios::binary);
if (!f) {
return false;
}
f.write((char*)&header_, sizeof(header_));
f.write((char*)&info_, sizeof(info_));
f.write(pixels_, data_size_);
if (f) {
return true;
}
return false;
}
void AddBorderInside(int borderSize = 15) {
for (int i = 0; i < info_.biWidth; i++) {
for (int j = 0; j < info_.biHeight; j++) {
if (i < borderSize || i >= info_.biWidth - borderSize
|| j < borderSize || j >= info_.biHeight - borderSize) {
int pos = row_padded_* j + i * 3;
pixels_[pos] = rand() % 256;
pixels_[pos + 1] = rand() % 256;
pixels_[pos + 2] = rand() % 256;
}
}
}
}
void AddBorderOutside(int borderSize = 15) {
int new_width = info_.biWidth + borderSize * 2;
int new_row_padded = (new_width * 3 + 3) & (~3);
int new_height = info_.biHeight + borderSize * 2;
int new_data_size = new_row_padded * new_height;
char* new_pixels_ = new char[new_data_size];
for (int i = 0; i < info_.biHeight; i++) {
int old_pos = row_padded_* i;
int new_pos = new_row_padded * (borderSize+i) +3 * borderSize;
memcpy(new_pixels_ + new_pos, pixels_ + old_pos, info_.biWidth * 3);
}
delete[] pixels_;
info_.biWidth = new_width;
info_.biHeight = new_height;
pixels_ = new_pixels_;
row_padded_ = new_row_padded;
data_size_ = new_data_size;
AddBorderInside(borderSize);
}
bool IsLoaded() const {
return loaded_;
}
~MyBitmap() {
delete[] pixels_;
}
};
int _tmain(int argc, _TCHAR* argv[])
{
srand(time(0));
MyBitmap bmp("input.bmp");
if (!bmp.IsLoaded()) {
std::cout << "Unable to load bitmap" << std::endl;
return 1;
}
bmp.AddBorderOutside();
if (!bmp.Save("output.bmp")) {
std::cout << "Unable to save bitmap" << std::endl;
}
return 0;
}