process.stdin.resume(); process.stdin.setEncoding('ascii'); var input_stdin = ""; var input_stdin_array = ""; var input_currentline = 0; process.stdin.on('data', function (data) { input_stdin += data; }); process.stdin.on('end', function () { input_stdin_array = input_stdin.split("\n"); main(); }); function readLine() { return input_stdin_array[input_currentline++]; } /////////////// ignore above this line //////////////////// function freq(array) { return array .sort((a, b) => (a - b)) .reduce((acc, item) => { acc[item] = acc[item] ? acc[item]+1 : 1; return acc; }, {}); } function main() { var n = parseInt(readLine()); types = readLine().split(' '); types = types.map(Number); // your code goes here let typeFreq = freq(types); let mostCommonTypeID = Object.keys(typeFreq).reduce((acc, item) => { if(typeFreq[item] > acc.max) { acc.max = typeFreq[item]; acc.typeID = item; } return acc; }, {max: 0, typeID: 1}).typeID; console.log(Number(mostCommonTypeID)); }