2
1

しまっちゃうおじさん

スナドリネコさんみたいなビジュアルなのに、
やってることは拉致・監禁という鬼畜なおじさん。
そりゃ、ぼのぼのも泣くわ...

チェック処理とかは端折ってる

/** ここから定型文 */
ここで記載したクラスについては、
こっちの記事に書いてある、標準入力をList化したりしてるMainクラスから呼び出す予定だし・なんか継承したりしてるYO!!

ちな、Mainを実行して標準入力から入力するのクソ面倒くさいので、
Java編については問題の入力例をパラメータにしたテストクラスとかも作って公開するYO!!

開発・実行環境はこんな感じ
  • VSCode
  • Java 17
  • jUnit 5.9
  • maven

pom.xmlはこんな感じ

pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>jp.co.asil</groupId>
    <artifactId>paiza202408</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter-engine</artifactId>
            <version>5.9.1</version>
            <scope>test</scope>
        </dependency>
    </dependencies>
</project>
/** ここまで定型文 */

実装クラス

Addition.java
package jp.co.asil.paiza202408;

import java.util.List;

public class Addition extends Question {

  public Addition(List<String> list) {
    super(list);
  }

  /**
   * 2つの正の整数 a, b が半角スペース区切りで入力されるので a と b を足した数を出力してください。
   */
  @Override
  public List<String> answer() {
    return List.of(String.valueOf(List.of(list.get(0).split(" ")).stream().mapToInt(Integer::parseInt).sum()));
  }
}

テストクラス

AdditionTest.java
package jp.co.asil.paiza202408;

import static org.junit.jupiter.api.Assertions.assertEquals;

import java.util.List;

import org.junit.jupiter.api.Test;

public class AdditionTest {
  @Test
  void testAnswer1() {
    Addition testClass = new Addition(List.of("1 1"));
    assertEquals(testClass.answer().get(0), "2");
  }

  @Test
  void testAnswer2() {
    Addition testClass = new Addition(List.of("0 99"));
    assertEquals(testClass.answer().get(0), "99");
  }
}

まとめ的なアレ

min/maxに然り、sumに然り、java.util.stream.IntStream って便利!!

2
1
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
2
1