Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- 연동
- EC2
- 도커
- 스프링예외처리
- Infra
- MySQL
- 알고리즘
- 오버라이딩
- 인텔리제이
- css
- AWS
- JWT
- 깃허브
- Intellij
- 스프링
- 스파르타
- 스프링시큐리티
- 스파르타코딩클럽
- tomcat
- 테스트코드
- mysqlworkbench
- 프로메테우스
- 그라파나
- 백준
- 자바
- 내일배움캠프
- java
- 키오스크
- 소셜로그인
- o'auth2
Archives
- Today
- Total
개발스토리지😃
[알고리즘] 보드게임 유령대소동 자바코드 본문
유령대소동이라는 파티게임 종류의 보드게임이 있다
특정 조건이 되면 물건을 찾는 게임인데 자바 코드로 한번 구현해보았다
게임설명
구성품
1. 카드 (2가지 색과 물체로 구성)
2. 컴포넌트 5개(하얀유령, 초록병, 빨간의자, 회색쥐, 파란책)
조건발동
1. 카드안에 색상과 컴포넌트가 일치하는 그림이 있다면 해당하는 컴포넌트를 먼저 가져가는 사람이 승리
ex) 파란책과 초록쥐가 그려진 카드가 나왔을 때 -> 파란책 가져가기
2. 카드안에 색상과 컴포넌트가 일치하는 그림이 없다면 색상과 컴포넌트가 겹치지 않는 컴포넌트를 먼저 가져가는 사람이 승리
ex) 하얀책과 초록쥐가 그려진 카드가 나왔을 때
-> 하양색인 유령 제외, 초록색인 초록병 제외, 책인 파란책 제외
-> 제외하고 남은 빨간책을 가져가는 사람이 승리
게임설명은 아래 링크를 보면 된다
💻 구현 코드
- String[] card 에서 카드에 나와있는 카드정보를 스트링배열로 입력하고 결과값을 받는다
ppackage game;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class GhostChaos {
public static void main(String[] args) {
String[] objects = {"whiteGhost", "redChair", "blueBook", "greenBottle", "grayMouse"};
String[] card = {"blueBook", "greenMouse"};
String answer = null;
for (String o : objects) {
if (o.equals(card[0]) || o.equals(card[1])) {
answer = o;
break;
}
}
if (answer == null) {
List<String> oddList = new ArrayList<>();
List<String> odds = new ArrayList<>();
for (String c : card) {
String[] parts = c.split("(?=\\p{Upper})");
odds.addAll(Arrays.asList(parts));
}
for (String o : objects) {
boolean isOdd = false;
for (String odd : odds) {
if (o.contains(odd)) {
isOdd = true;
break;
}
}
if (!isOdd) {
answer = o;
break;
}
}
}
System.out.println(answer);
}
}
💯 결과화면
- 파란책과 초록쥐가 그려진 카드가 나왔을 때
- 하얀책과 초록쥐가 그려진 카드가 나왔을 때
'알고리즘 > 자바' 카테고리의 다른 글
[Java] Collection 구조 및 메서드 (0) | 2025.03.28 |
---|---|
[Java] 계산기 만들기 Level1 트러블 슈팅 (1) | 2025.02.27 |
[알고리즘] 자바풀이 백준 10871번 X보다 작은 수 Scanner, StringBuilder, BufferedReader 풀이 (2) | 2024.11.28 |