골:
선택적인 전투 능력을 가진 두 생물이 있다면, 어떤 생물이 죽었는지 나타내는 고유하지만 일관된 값을 반환합니다.
입력:
#Longest form:
[[P,T, "<abilities>"], [P,T, "<abilities>"]]
#Shortest form:
[[P,T], [P,T]]
각 생물은의 형태로 제공 [P,T,"<abilities>"]
됩니다. 그것은 형태가 될 것이다 [P,T]
, [P,T,""]
또는 [P,T,0]
이 더 능력, 양식에 선택의 여지가없는 경우. P는 0보다 큰 정수이고, T는 1보다 큰 정수이다. <abilities>
은의 하위 집합 "DFI"
이거나 원하는 경우 단일 숫자 / 비트 문자열을 통해 표현 될 수 있습니다. 깃발의 순서도 당신에게 달려 있습니다.
전투 역학 :
각 생물에는 두 가지 능력치, 즉 힘과 강인함의 순서와 선택 능력이 있습니다. 생물의 힘은> = 0입니다. 생물의 강인함은> = 1입니다.
각 생물은 동시에 상대의 생물과 동일한 피해를 입 힙니다. 값이 상대방의 강인 이상인 경우 (파괴 할 수없는 경우 제외) 사망합니다.
예 : Alice는 능력 2/2
이 있고 Bob은 3/4
능력이 없습니다. 앨리스는 밥에게 2의 피해를주고 대가로 3의 피해를받습니다. Alice의 강인함은 2이므로 죽을 것이고 Bob의 강인함은 4이므로 살 것입니다.
우리가 이것에 대해 고려할 옵션 능력은 3 가지뿐입니다 (게임에는 더 많지만). 이것들은 하나의 문자 플래그가 될 것입니다 :
- [D] eathtouch : 모든 피해량 (X> 0)은 치명적인 것으로 간주됩니다.
- [F] irst Strike : 먼저 피해를 입히고, 다른 생물이 다시 공격하기 전에 죽일 수 있습니다. 두 생물이 모두 첫 타격을 가하면 정상적으로 전투를 해결하십시오.
- [I] 파괴 불가능 : 죽음의 손길을 포함하여 치명적인 피해는 없습니다.
산출:
다음 네 가지 경우 각각에 대해 일관된 값입니다. 답에 네 가지 가치를 명시하십시오. 괄호 안의 반환 값 예 :
- 어느 생물도 죽지 않았다 (0)
- 첫 번째 생물이 죽었다 (1)
- 두 번째 생물이 죽었다 (2)
- 두 생물 모두 죽었다 (3)
규칙 :
- 입력에는 올바르게 형식이 지정된 두 생물이 있어야합니다.
- 능력을 위해 캐릭터를 사용하는 경우, 캐릭터가 원하는대로 주문되었다고 가정 할 수 있지만 관련이있는 경우 사용 된 주문을 게시 할 수 있습니다.
- 기능에 숫자 / 비트 스트링을 사용하는 경우 사용중인 인코딩을 게시하십시오. 예 :
111
isD/F/I
,7
isD/F/I
등 - 생물에게 능력이 없다면,
[P,T, ""]
또는 동등한 숫자 로도 사용할 수 있습니다 - 표준 허점 금지
- 이것은 코드 골프 이므로 가장 짧은 코드가 승리합니다.
예 :
Input: [[2,2], [1,1]]
Output: 2nd Dies
Input: [[0,2], [0,1]] #0/2 vs 0/1
Output: Neither Die
Input: [[2,1], [2,1]] #2/1 vs 2/1
Output: Both Die
Input: [[1,1, "D"], [2,2]] #1/1 Deathtoucher vs 2/2
Output: Both Die
Input: [[2,2], [0,1, "D"]] #2/2 vs 0/1 Deathtoucher
Output: 2nd Dies
Input: [[2,2], [1,1, "DF"]] #2/2 vs 1/1 Deathtouch First-striker
Output: 1st Dies
Input: [[0,2, "D"], [0,1, "DF"]] #0/2 Deathtoucher vs 0/1 Deathtouch First-striker
Output: Neither Die
Input: [[2,2], [2,2, "F"]] #2/2 vs 2/2 First-striker
Output: 1st Dies
Input: [[2,2, "I"], [1,1, "DF"]] #2/2 Indestructible vs 1/1 Deathtouch First-striker
Output: 2nd Dies
Input: [[9999,9999], [1,1, "I"]] #9999/9999 vs 1/1 Indestructible
Output: Neither Die
Input: [[2,2, "F"], [1,1, "F"]] #2/2 First-Striker vs 1/1 First-Striker
Output: 2nd Dies
#9/9 Deathtouch, Indestructible First-Striker vs 9/9 Deathtouch, Indestructible First-Striker
Input: [[9,9, "DFI"], [9,9, "DFI"]]
Output: Neither Die
D => 0, F => 1, I => 2