小红一共有 个盒子,标号为 1 到 ,小红向盒子里放入小球 次,每次进行以下两个操作中的一个: 1. 向编号为 的盒子里放入一个小球; 2. 向除了编号为 的其他 盒子里放入一个小球。 小红想知道,第几次操作之后,所有盒子里至少都有一个小球,如果一直无法达到这个目标,输出 。
区块链毕设网qklbishe.com为您提供问题的解答
小红一共有 个盒子,标号为 1 到 ,小红向盒子里放入小球 次,每次进行以下两个操作中的一个:
1. 向编号为 的盒子里放入一个小球;
2. 向除了编号为 的其他 盒子里放入一个小球。
小红想知道,第几次操作之后,所有盒子里至少都有一个小球,如果一直无法达到这个目标,输出 。
import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(), m = sc.nextInt(); Set<Integer> set = new HashSet<>(); for (int i = 1; i <= n; i++) set.add(i); int i; for (i = 1; i <= m; i++) { if (sc.nextInt() == 1) { set.remove(sc.nextInt()); if (set.isEmpty()) break; } else { int x = sc.nextInt(); if (!set.contains(x)) break; set = new HashSet<>(); set.add(x); } } System.out.println(i > m ? -1 : i); } }
编辑于 今天 17:21:27
以上就是关于问题小红一共有 个盒子,标号为 1 到 ,小红向盒子里放入小球 次,每次进行以下两个操作中的一个:
1. 向编号为 的盒子里放入一个小球;
2. 向除了编号为 的其他 盒子里放入一个小球。
小红想知道,第几次操作之后,所有盒子里至少都有一个小球,如果一直无法达到这个目标,输出 。的答案
欢迎关注区块链毕设网-
专业区块链毕业设计成品源码,定制。
区块链NFT链游项目方科学家脚本开发培训