#include "text.h"
#include <iostream>
#include <vector>
using std::vector;
const size_t SCREEN_WIDTH = 80;
const size_t MAX_ASTERISK = SCREEN_WIDTH - 3 - 1;
// Âûâîä ãèñòîãðàììû
void show_histogram_text(const std::vector<size_t>& bins) {
    size_t max_bin_count = 0;
    for (size_t bin : bins) {
        if (bin > max_bin_count) {
            max_bin_count = bin;
        }
    }

    if (max_bin_count <= MAX_ASTERISK) {
        for (size_t bin : bins) {
            if (bin < 10) std::cout << " ";
            std::cout << " " << bin << "|";
            for (size_t j = 0; j < bin; j++) {
                std::cout << "*";
            }
            std::cout << std::endl;
        }
    } else {
        for (size_t bin : bins) {
            size_t height = static_cast<size_t>(MAX_ASTERISK * (static_cast<double>(bin) / max_bin_count));
            if (bin < 100) std::cout << " ";
            if (bin < 10) std::cout << " ";
            std::cout << bin << "|";
            for (size_t j = 0; j < height; j++) {
                std::cout << "*";
            }
            std::cout << std::endl;
        }
    }
}