#include <iostream>
#include <algorithm>
#include <vector>
int main()
{
int n, k;
std::cin >> n >> k;
std::vector<std::vector<int>> piramida(n);
for(int i = 0; i < n; i++)
{
piramida[i] = std::vector<int>(i + 1);
for(int j = 0; j < i+1; j++)
{
std::cin >> piramida[i][j];
}
}
for(auto &s: piramida)
{
if(s.size() < k)
{
k -= s.size();
continue;
}
else
{
for(int i = 0; i < k - 1; i++)
{
s.erase(std::find(s.begin(), s.end(), *std::min_element(s.begin(), s.end())));
}
std::cout << *std::min_element(s.begin(), s.end()) << std::endl;
// std::cout << "==========" << std::endl;
// for(auto c : s)
// {
// std::cout << c << " ";
// }
break;
}
}
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | #include <iostream> #include <algorithm> #include <vector> int main() { int n, k; std::cin >> n >> k; std::vector<std::vector<int>> piramida(n); for(int i = 0; i < n; i++) { piramida[i] = std::vector<int>(i + 1); for(int j = 0; j < i+1; j++) { std::cin >> piramida[i][j]; } } for(auto &s: piramida) { if(s.size() < k) { k -= s.size(); continue; } else { for(int i = 0; i < k - 1; i++) { s.erase(std::find(s.begin(), s.end(), *std::min_element(s.begin(), s.end()))); } std::cout << *std::min_element(s.begin(), s.end()) << std::endl; // std::cout << "==========" << std::endl; // for(auto c : s) // { // std::cout << c << " "; // } break; } } } |
English