#include <iostream>
#include <vector>
#include <algorithm>
// Function used to compare two ints
// Note that the comparison will just compare a and b, nothing to do with time
bool compareInt(int a, int b)
{
return a > b;
}
int main(){
std::vector<int> time={5, 16, 4, 7};
std::vector<int> amplitude={10,17,8,16};
std::vector<int> index(time.size(), 0);
for (int i = 0 ; i != index.size() ; i++) {
index[i] = i;
}
// This sort method uses a function (compareInt) to compare the elements
// Not that the result of the program will be wrong since it will just
// compare the elements from index and not from the vector time
sort(index.begin(), index.end(), compareInt);
std::cout << "Time \t Ampl \t idx" << std::endl;
for (int ii = 0 ; ii != index.size() ; ++ii) {
std::cout << time[index[ii]] << " \t " << amplitude[index[ii]] << " \t " << index[ii] << std::endl;
}
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8YWxnb3JpdGhtPgoKLy8gRnVuY3Rpb24gdXNlZCB0byBjb21wYXJlIHR3byBpbnRzCi8vIE5vdGUgdGhhdCB0aGUgY29tcGFyaXNvbiB3aWxsIGp1c3QgY29tcGFyZSBhIGFuZCBiLCBub3RoaW5nIHRvIGRvIHdpdGggdGltZQpib29sIGNvbXBhcmVJbnQoaW50IGEsIGludCBiKQp7CglyZXR1cm4gYSA+IGI7Cn0KCmludCAgbWFpbigpewoKICAgIHN0ZDo6dmVjdG9yPGludD4gdGltZT17NSwgMTYsIDQsIDd9OwogICAgc3RkOjp2ZWN0b3I8aW50PiBhbXBsaXR1ZGU9ezEwLDE3LDgsMTZ9OwogICAgc3RkOjp2ZWN0b3I8aW50PiBpbmRleCh0aW1lLnNpemUoKSwgMCk7CgogICAgZm9yIChpbnQgaSA9IDAgOyBpICE9IGluZGV4LnNpemUoKSA7IGkrKykgewogICAgICAgIGluZGV4W2ldID0gaTsKICAgIH0KCgkvLyBUaGlzIHNvcnQgbWV0aG9kIHVzZXMgYSBmdW5jdGlvbiAoY29tcGFyZUludCkgdG8gY29tcGFyZSB0aGUgZWxlbWVudHMKCS8vIE5vdCB0aGF0IHRoZSByZXN1bHQgb2YgdGhlIHByb2dyYW0gd2lsbCBiZSB3cm9uZyBzaW5jZSBpdCB3aWxsIGp1c3QKCS8vIGNvbXBhcmUgdGhlIGVsZW1lbnRzIGZyb20gaW5kZXggYW5kIG5vdCBmcm9tIHRoZSB2ZWN0b3IgdGltZQogICAgc29ydChpbmRleC5iZWdpbigpLCBpbmRleC5lbmQoKSwgY29tcGFyZUludCk7CgogICAgc3RkOjpjb3V0IDw8ICJUaW1lIFx0IEFtcGwgXHQgaWR4IiA8PCBzdGQ6OmVuZGw7CiAgICBmb3IgKGludCBpaSA9IDAgOyBpaSAhPSBpbmRleC5zaXplKCkgOyArK2lpKSB7CiAgICAgICAgc3RkOjpjb3V0IDw8IHRpbWVbaW5kZXhbaWldXSA8PCAiIFx0ICIgPDwgYW1wbGl0dWRlW2luZGV4W2lpXV0gPDwgIiBcdCAiIDw8IGluZGV4W2lpXSA8PCBzdGQ6OmVuZGw7CiAgICB9Cn0=