2012-03-29 8 views
1

Permutation Spiel (30 Punkte)Permutation Spiel - 2. Eingabe Fall - Erklärung

Alice und Bob das folgende Spiel spielen:

1) Sie wählen eine Permutation der ersten Zahlen N mit zu beginnen.

2) Sie spielen abwechselnd und Alice spielt zuerst.

3) In einer Runde können sie jede verbleibende Zahl aus der Permutation entfernen.

4) Das Spiel endet, wenn die verbleibenden Zahlen eine steigende Sequenz bilden. Die Person, die den letzten Zug gespielt hat (danach wird die Reihenfolge größer), gewinnt das Spiel.

Vorausgesetzt beide spielen optimal, wer gewinnt das Spiel?

Eingabe:
Die erste Zeile enthält die Anzahl der Testfälle T. T Testfälle folgen. Jeder Fall enthält eine Ganzzahl N in der ersten Zeile, gefolgt von einer Permutation der Ganzzahlen 1..N in der zweiten Zeile.

Ausgang:
Ausgang T Linien, eine für jeden Testfall mit „Alice“, wenn Alice das Spiel und „Bob“ sonst gewinnt.

Constraints:
< 1 = T < = 100
= N < = 15

Die Permutation wird eine wachsende Folge zunächst nicht sein.

Probe Input:

Beispielausgabe:
Alice
Bob

Erläuterung: Für die Im ersten Beispiel kann Alice die 3 oder die 2 entfernen, um die Reihenfolge zu erhöhen und das Spiel zu gewinnen .

Kann ich bitte jemand helfen, auf dem zweiten Eingang Fall out: 5 3 2 1 4

Die zunehmenden Sequenzen möglich sind:
1) 3 4 - Entfernen von 5, 2, 1 in beliebiger Reihenfolge
2) 2 4 - Entfernen 5, 3, 1 in beliebiger Reihenfolge
3) 1 4 - 5, 3, 2 in beliebiger Reihenfolge Alice

so dass die Ausgabe sein sollte zu entfernen?

Bitte teilen Sie keinen Code. Danke

+1

Sie sollten wahrscheinlich zu gewinnen Definieren Sie "optimal", um die Frage schlüssig zu beantworten. Die Richtigkeit der Antwort @logic_max hängt von der Interpretation dieses einen Wortes ab. –

Antwort

1

Wenn Alice jeder 5,3,2,1 entfernt dann Bob entfernt 4. So kann die zunehmende Sequenz nur aus einem Element bestehen, Elemente können in beliebiger Reihenfolge entfernt werden. Daher gewinnt Bob.

Wenn Alice 4 entfernt, dann muss auch die steigende Sequenz von einem Element sein. Bob gewinnt.

So gewinnt Bob.

+0

Danke, dass meine Zweifel klarstellt – user1301541

+0

@ user1301541: Darf ich den Link zu dem Problem wissen? Auch, wenn diese Antwort für Sie hilfreich war, vergessen Sie nicht, sie als akzeptiert zu markieren: D –

+1

[link] http://www.interviewstreet.com/challenges/dashboard/#problem/4eb167685f999 – user1301541

-1

HINWEIS: Dies ist kein Programmierproblem und gehört wirklich nicht auf dieser Seite ...

Es sieht sicher wie Alice sollte der Gewinner des zweiten Testfall sein.

Fluss:

// Start state 
5 3 2 1 4 

// Alice remove 5 
3 2 1 4 

// Bob remove 3, 2, or 1 
(2 1 4) or (3 1 4) or (3 2 4) 

// Alice remove first number remaining 
(1 4) or (2 4) 

// Alice won! 
+0

Es bezieht sich auf die Codierung, aber ich bin im zweiten Fall nach 4 Stunden stecken – user1301541

+0

Dies ist ein Programmierproblem basierend auf Spieltheorie. –

+0

@logic_max: Er will nur die Antwort auf die Frage, also ist es ein logisches Problem, kein Programmierproblem. –

0

Ein möglicher Fall 4 sein könnte oder 5 zu erhöhen seq

Da die Eingangsparameter betrachtet wird, sind n> = 2

Aber Alice würde optimal spielen und entfernen 5