LoginSignup
1
0

More than 3 years have passed since last update.

試験の合格判定プログラム

Posted at

問題

総合力を重視する paiza 大学の入試では 1 次試験 (英語、数学、理科、国語、地理歴史の 5 科目で各 100 点満点) の成績で2段階選抜を行います。2段階選抜を通過する条件は以下のようになっています。

全科目の合計得点が 350 点以上
理系の受験者の場合は理系 2 科目 (数学、理科) の合計得点が 160 点以上
文系の受験者の場合は文系 2 科目 (国語、地理歴史) の合計得点が 160 点以上
受験者それぞれの各科目の点数が入力されるので、何人2段階選抜を通過できるかを求めてください。

スクリーンショット 2021-04-03 20.27.42.png

受験者 2 は全科目の合計は 350 点以上ですが文系 2 科目の合計が 160 点未満なので不合格。一方受験者 4 は理系 2 科目の合計は 160 点以上ですが全科目の合計が 350 点未満なので不合格となります。

→ 通過人数: 2 人

getsで入力される値は以下の通りです。

5
s 70 78 82 57 74
l 68 81 81 60 78
s 63 76 55 80 75
s 90 100 96 10 10
l 88 78 81 97 93
n = gets.chomp.to_i

ret = 0
n.times do |i|
  arr = gets.chomp.split(' ')
  sl = arr[0]
  scores = arr[1..-1].map(&:to_i)
  sum = scores.inject(0) { |sum, n| sum = sum + n }
  #puts sum

  if sum < 350
    next
  end

  en = scores[0]
  mt = scores[1]
  sc = scores[2]
  jp = scores[3]
  gh = scores[4]

  if sl == "s"
    next if (mt + sc ) < 160
  else
    next if (jp + gh) < 160
  end

  ret = ret + 1
end

puts ret

=> 2
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0