这个用JAVA怎么实现?

qq_28484955 2019-10-12 06:56:28
集合a里有如下字符串: “1,2,3,5,7” “1,2,4,6,8” “1,3,4,6,8” “2,3,4,5,7” “2,3,5,7,8” “3,4,5,7,10” “4,5,6,7,8” 怎样把集合a中的两连数,三连数,四连数,五连数分别放到集合b,c,d,e中?
...全文
83 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_28484955 2019-11-01
  • 打赏
  • 举报
回复
引用 1 楼 淡青の月的回复:
List<String> a = new ArrayList<>();
List<String> b = new ArrayList<>();
List<String> c = new ArrayList<>();
List<String> d = new ArrayList<>();
List<String> e = new ArrayList<>();
a.add("1,2,3,5,7");
a.add("1,2,4,6,8");
a.add("1,3,4,6,8");
a.add("2,3,4,5,7");
a.add("2,3,5,7,8");
a.add("3,4,5,7,10");
a.add("4,5,6,7,8");
for (String s : a) {
String[] strs = s.split(",");
int[] arr = new int[strs.length];
for (int i = 0; i < arr.length; i++) {
arr[i] = Integer.parseInt(strs[i]);
}
int l = arr.length - 1;
if (arr[l] - arr[0] == 4) {
e.add(s);
} else if (arr[l] - arr[1] == 3 || arr[l - 1] - arr[0] == 3) {
d.add(s);
} else if (arr[l] - arr[2] == 2 || arr[l - 1] - arr[1] == 2 || arr[l - 2] - arr[0] == 2) {
c.add(s);
} else if (arr[l] - arr[3] == 1 || arr[l - 1] - arr[2] == 1 || arr[l - 2] - arr[1] == 1 || arr[l - 3] - arr[0] == 1) {
b.add(s);
}

}
System.out.println(b);
System.out.println(c);
System.out.println(d);
System.out.println(e);

比较笨的方法,只适合本题。
你好,那如果是七个数字要怎样实现呢?
淡青の月 2019-10-12
  • 打赏
  • 举报
回复
List<String> a = new ArrayList<>();
List<String> b = new ArrayList<>();
List<String> c = new ArrayList<>();
List<String> d = new ArrayList<>();
List<String> e = new ArrayList<>();
a.add("1,2,3,5,7");
a.add("1,2,4,6,8");
a.add("1,3,4,6,8");
a.add("2,3,4,5,7");
a.add("2,3,5,7,8");
a.add("3,4,5,7,10");
a.add("4,5,6,7,8");
for (String s : a) {
String[] strs = s.split(",");
int[] arr = new int[strs.length];
for (int i = 0; i < arr.length; i++) {
arr[i] = Integer.parseInt(strs[i]);
}
int l = arr.length - 1;
if (arr[l] - arr[0] == 4) {
e.add(s);
} else if (arr[l] - arr[1] == 3 || arr[l - 1] - arr[0] == 3) {
d.add(s);
} else if (arr[l] - arr[2] == 2 || arr[l - 1] - arr[1] == 2 || arr[l - 2] - arr[0] == 2) {
c.add(s);
} else if (arr[l] - arr[3] == 1 || arr[l - 1] - arr[2] == 1 || arr[l - 2] - arr[1] == 1 || arr[l - 3] - arr[0] == 1) {
b.add(s);
}

}
System.out.println(b);
System.out.println(c);
System.out.println(d);
System.out.println(e);

比较笨的方法,只适合本题。

51,396

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧