https://paiza.jp/learning/long-table
It's a matter of what to do with the borders.
package jp.mirageworld.paiza_learning;
import java.io.InputStream;
import java.util.Scanner;
class UnagiNew {
public static void main(String[] args) {
System.out.println(exec(System.in));
}
public static int exec(InputStream is) {
try (Scanner sc = new Scanner(is);) {
//Number of seats
int n = sc.nextInt();
boolean[] bools = new boolean[n];
//Number of groups
int m = sc.nextInt();
for (int i = 0; i < m; i++) {
//Number of people
int a = sc.nextInt();
//Starting position
int b = sc.nextInt();
//check
boolean check = false;
for (int j = b; j < a + b; j++)
if (bools[j % bools.length] && (check = true))
break;
if (check)
continue;
for (int j = b; j < a + b; j++)
bools[j % bools.length] = true;
}
int ret = 0;
for (boolean b : bools)
if (b)
ret++;
return ret;
}
}
}
Relation: https://qiita.com/krppppp/items/a75205c9dcb4165ca2b4