Problem:
問題 1: 平均点 (Average Score)

問題

JOI 高校の授業には，太郎君，次郎君，三郎君，四郎君，花子さんの 5 人の生徒が参加した．

この授業では，期末試験を実施した．期末試験は，5 人全員が受験した．期末試験の点数が 40 点以上の生徒は，期末試験の点数がそのまま成績になった．期末試験の点数が 40 点未満の生徒は全員，補習を受け，成績が 40 点になった．

5 人の生徒の期末試験の点数が与えられたとき，5 人の成績の平均点を計算するプログラムを作成せよ．

入力

入力は 5 行からなり，1 行に 1 つずつ整数が書かれている．

1 行目には 太郎君の期末試験の点数が書かれている．

2 行目には 次郎君の期末試験の点数が書かれている．

3 行目には 三郎君の期末試験の点数が書かれている．

4 行目には 四郎君の期末試験の点数が書かれている．

5 行目には 花子さんの期末試験の点数が書かれている．

生徒の期末試験の点数はすべて 0 点以上 100 点以下の整数である．

生徒の期末試験の点数はすべて 5 の倍数である．

5 人の生徒の成績の平均点は必ず整数になる．

出力

5 人の生徒の成績の平均点をあらわす整数を 1 行で出力せよ．

入出力例

入力例 1

10
65
100
30
95

出力例 1

68

入出力例 1 では，太郎君と四郎君の期末試験の点数は 40 点未満なので，太郎君と四郎君の成績は 40 点になる．次郎君と三郎君と花子さんの期末試験の点数は 40 点以上なので，次郎君の成績は 65 点，三郎君の成績は 100 点，花子さんの成績は 95 点となる．5 人の成績の合計は 340 なので，平均点は 68 点となる．

入力例 2

40
95
0
95
50

出力例 2

64

問題文と自動審判に使われるデータは、情報オリンピック日本委員会が作成し公開している問題文と採点用テストデータです。

Solution in JavaScript (judge verdict: Accepted)

var fs = require('fs');

// class Stdin
function Stdin() {
  this.__input = null;
  this.__lines = [];
  this.__index = 0;
}
Stdin.prototype.init = function() {
  this.__input = fs.readFileSync('/dev/stdin', 'utf-8');
  this.__lines = this.__input.split("\n");
  this.__index = 0;
}
Stdin.prototype.readline = function() {
  if(this.__index === this.__lines.length) this.init();
  return this.__lines[this.__index++];
};
Stdin.prototype.readlines = function() {
  if(this.__index === this.__lines.length) this.init();
  cur = this.__index; this.__index = this.__lines.length;
  return this.__lines.slice(cur);
};
var stdin = new Stdin;

Array.prototype.imap = function() { return this.map((x)=>parseInt(x)); }
Array.prototype.fmap = function() { return this.map((x)=>parseFloat(x)); }
Array.prototype.smap = function() { return this.map((x)=>String(x)); }
Array.prototype.ffill = function(cb) {
  for(var i=0; i<this.length; ++i) { this[i] = cb(i); } return this;
}
Array.prototype.max = function(cb) {
  if(this.length === 0) return undefined;
  res = cb ? cb(this[0], 0) : this[0];
  for(var i=1; i<this.length; ++i){ var val = cb ? cb(this[i], i) : this[i]; if(res < val) res = val; }
  return res;
}
Array.prototype.min = function(cb) {
  if(this.length === 0) return undefined;
  res = cb ? cb(this[0], 0) : this[0];
  for(var i=1; i<this.length; ++i){ var val = cb ? cb(this[i], i) : this[i]; if(val < res) res = val; }
  return res;
}
Array.prototype.sum = function(cb) {
  if(this.length === 0) return undefined;
  res = cb ? cb(this[0], 0) : this[0];
  for(var i=1; i<this.length; ++i) res += cb ? cb(this[i], i) : this[i];
  return res;
}

Number.prototype.times = function(cb) { res = []; for(var i=0; i<this; ++i) res.push(cb ? cb(i) : i); return res; }

Object.prototype.forEach = function(cb) { Object.keys(this).forEach(cb); }
Object.prototype.map = function(cb) { Object.keys(this).map(cb); }

console.log((5).times(x=>stdin.readline()).imap().sum(x=>x<40?40:x)/5);