你在信奧上能走多遠?

木头左發表於2024-04-13

題目描述 葉老師有很多學生,在演算法競賽上取得了非常好的成就,在工作後也非常出色。 那麼你能在信奧上走多遠?假設每個人起始分為0,根據以下規則,最後的得分越高,你就能走得越遠。 (1)如果你對信奧非常感興趣,加30分,有興趣或者想去了解產生興趣加5分,一點也不感興趣扣30分 (2)如果你是5年級及以下,加30分,6年級或7年級加20分,8年級或9年級加10分 (3)如果你各門功課排名班級前3名,加50分,4~10名加30分,11 ~20加10分 (4)如果你數學排名班級前3名,加50分,4~ 10名加20分,11~20加5分 (5)如果你遇到困難,能即時聯絡老師,商量對策並且能堅持去學信奧,加50分,否則不加分 (6)如果你遇到一個適合學習信奧的老師(即要麼帶學生拿過很多獎的,要麼自己參加競賽拿過很不錯獎的),並跟著這個老師學習,加50分,否則不得分 如果你最後得分在150分以上,恭喜你,只要你跟隨葉老師,好好練,一定可以取得好成績的。

輸入 只要一行,6個整數,每個整數分別對應上面的6個問題的情況, 第一個數對應第一點,3非常感興趣,2有興趣,1一點也不感興趣 第二個數是年級 第三個數是各門功課綜合班級排名 第四個數是數學班級排名 第五個數是能問、能堅持,則是1,否則是0 第六個數是有一個適合的老師,值為1,否則為0 輸出 輸出這個學生的分數值 樣例輸入 Copy 3 7 1 1 1 1 樣例輸出 Copy 250

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) throws IOException {
        Scanner scanner = new Scanner(System.in);
        int[] inputs = new int[6];
                
        for (int i = 0; i < 6; i++) {
            inputs[i] = scanner.nextInt();
        }
        int score = 0;
        int interest = inputs[0];
        int grade = inputs[1];
        int rank = inputs[2];
        int mathRank = inputs[3];
        int contact = inputs[4];
        int goodTeacher = inputs[5];

        // 問題1

        if (interest == 3) score += 30;
        else if (interest == 2) score += 5;
        else if (interest == 1) score -= 30;

        // 問題2

        if (grade <= 5) score += 30;
        else if (grade >= 6 && grade <= 7) score += 20;
        else if (grade >= 8 && grade <= 9) score += 10;

        // 問題3

        if (rank <= 3) score += 50;
        else if (rank >= 4 && rank <= 10) score += 30;
        else if (rank >= 11 && rank <= 20) score += 10;

        // 問題4

        if (mathRank <= 3) score += 50;
        else if (mathRank >= 4 && mathRank <= 10) score += 20;
        else if (mathRank >= 11 && mathRank <= 20) score += 5;

        // 問題5

        if (contact == 1) score += 50;

        // 問題6

        if (goodTeacher == 1) score += 50;

        System.out.println(score);
    }
} 

相關文章