Problem:


Score : 500 points

Problem Statement

There is a string s of length 3 or greater.
No two neighboring characters in s are equal.

Takahashi and Aoki will play a game against each other.
The two players alternately performs the following operation, Takahashi going first:

Remove one of the characters in s, excluding both ends. However, a character cannot be removed if removal of the character would result in two neighboring equal characters in s.

The player who becomes unable to perform the operation, loses the game. Determine which player will win when the two play optimally.

Constraints

3 ≤ |s| ≤ 10^5

s consists of lowercase English letters.

No two neighboring characters in s are equal.

Input

The input is given from Standard Input in the following format:

s

Output

If Takahashi will win, print First. If Aoki will win, print Second.

Sample Input 1

aba

Sample Output 1

Second

Takahashi, who goes first, cannot perform the operation, since removal of the b, which is the only character not at either ends of s, would result in s becoming aa, with two as neighboring.

Sample Input 2

abc

Sample Output 2

First

When Takahashi removes b from s, it becomes ac.
Then, Aoki cannot perform the operation, since there is no character in s, excluding both ends.

Sample Input 3

abcab

Sample Output 3

First



Sample input:
aba


Sample output:
Second

Submission status: Accepted

Solution code:
s = input()
n = len(s)

if n % 2 == 0:
    if s[0] == s[-1]:
        print('First')
    else:
        print('Second')
else:
    if s[0] == s[-1]:
        print('Second')
    else:
        print('First')

Submission status: Accepted

Solution code:
s=input()
a=s[0]==s[-1]
b=len(s)%2==0

if a==b:
  print("First")
else:
  print("Second")

Submission status: Accepted

Solution code:
s=input()
n=len(s)
if s[0]==s[n-1] and n%2==0 or s[0]!=s[n-1] and n%2==1:
	print("First")
else:
	print("Second")

Submission status: Accepted

Solution code:
s = list(input())
print("First" if (len(s) - len(set([s[0], s[-1]]))) % 2 == 1 else "Second")

Submission status: Accepted

Solution code:
s = str(input())
a = len(s)%2==0
b = s[0]==s[-1]

if a ^ b:
    print('Second')
else:
    print('First')

Submission status: Accepted

Solution code:
S = input()

N = (len(S) % 2 == 0)
X = (S[0] == S[-1])

if N ^ X:
  print("Second")
else:
  print("First")

Submission status: Accepted

Solution code:
s = input()
l = len(s)
print('First' if (l & 1) ^ (s[0] == s[l-1]) else 'Second')

Submission status: Accepted

Solution code:
import sys
from copy import deepcopy
def input(): return sys.stdin.readline().strip()

def main():
    s = input()
    l = len(s)
    if s[0] == s[-1] and l % 2 == 0:
        print("First")
    elif s[0] == s[-1] and l % 2 != 0:
        print("Second")
    elif l % 2 == 0:
        print("Second")
    else:
        print("First")


if __name__ == "__main__":
    main()

Submission status: Accepted

Solution code:
s = input()
if (len(s) % 2 == 0 and s[0] == s[-1]) or (len(s) % 2 != 0 and s[0] != s[-1]):
    print("First")
else:
    print("Second")

Submission status: Accepted

Solution code:
s = input()
turn = len(s)
if s[0] == s[turn-1]:
    turn += 1
if turn & 1:
    print("First")
else:
    print("Second")

Submission status: Accepted

Solution code:
S = input()

if (len(S)%2==0)^(S[0]==S[-1]):
  print("Second")
else:
  print("First")

Submission status: Accepted

Solution code:
s=input()
if (len(s)%2)^(s[0]==s[-1]):print("First")
else:print("Second")

Submission status: Accepted

Solution code:
import sys
input = lambda : sys.stdin.readline().rstrip()
sys.setrecursionlimit(max(1000, 10**9))
write = lambda x: sys.stdout.write(x+"\n")


s = input()
if s[0]==s[-1]:
    v = len(s) - 1
else:
    v = len(s)
if v%2==0:
    print("Second")
else:
    print("First")

Submission status: Accepted

Solution code:
s=input()
if s[0] != s[-1]:
  if len(s) % 2 == 0:
    print('Second')
  else:
    print('First')
else:
  if len(s) % 2 == 0:
    print('First')
  else:
    print('Second')

Submission status: Accepted

Solution code:
s = input()
cond1 = s[0] == s[-1]
cond2 = len(s) % 2 == 0
if cond1 ^ cond2:
    print('Second')
else:
    print('First')

Submission status: Accepted

Solution code:
#from collections import deque,defaultdict
printn = lambda x: print(x,end='')
inn = lambda : int(input())
inl   = lambda: list(map(int, input().split()))
inm   = lambda:      map(int, input().split())
ins = lambda : input().strip()
DBG = True # and False
BIG = 10**18
R = 10**9 + 7
#R = 998244353

def ddprint(x):
  if DBG:
    print(x)

s = ins()
if s=='ab':
    3/0
n = len(s)
if s[0]==s[-1]:
    n += 1
print('Second' if n%2==0 else 'First')

Submission status: Accepted

Solution code:
s=input()

if len(s)%2==0:
    a=True
else:
    a=False

if s[0]==s[-1]:
    b=True
else:
    b=False

if a^b:
    print("Second")
else:
    print("First")

Submission status: Accepted

Solution code:
def main():
    S = input()
    N = len(S)
    # S[0] == S[-1] -> 最終的に「ababa」形式（長さ奇数） -> 元の長さが偶数ならFirstの勝ち
    # S[0] != S[-1] -> 最終的に「ababab」形式（長さ偶数） -> 元の長さが奇数ならFirstの勝ち
    if (S[0] == S[-1]) ^ (N % 2 == 1):
        print('First')
    else:
        print('Second')


if __name__ == '__main__':
    main()

Submission status: Accepted

Solution code:
s = input()
if s[0] == s[-1]:
    if len(s)%2 == 0:
        print("First")
    else:
        print("Second")
else:
    if len(s)%2 == 0:
        print("Second")
    else:
        print("First")

Submission status: Accepted

Solution code:
s = input()
print("Second" if (s[0]==s[-1])^(len(s)%2==0) else "First")

Submission status: Accepted

Solution code:
def getN():
    return int(input())
def getNM():
    return map(int, input().split())
def getList():
    return list(map(int, input().split()))
def getArray(intn):
    return [int(input()) for i in range(intn)]
def input():
    return sys.stdin.readline().rstrip()
def rand_N(ran1, ran2):
    return random.randint(ran1, ran2)
def rand_List(ran1, ran2, rantime):
    return [random.randint(ran1, ran2) for i in range(rantime)]
def rand_ints_nodup(ran1, ran2, rantime):
  ns = []
  while len(ns) < rantime:
    n = random.randint(ran1, ran2)
    if not n in ns:
      ns.append(n)
  return sorted(ns)

def rand_query(ran1, ran2, rantime):
  r_query = []
  while len(r_query) < rantime:
    n_q = rand_ints_nodup(ran1, ran2, 2)
    if not n_q in r_query:
      r_query.append(n_q)
  return sorted(r_query)

from collections import defaultdict, deque, Counter
from sys import exit
from decimal import *
import heapq
from math import sqrt
from fractions import gcd
import random
import string
import copy
from itertools import combinations, permutations, product
from operator import mul, itemgetter
from functools import reduce
from bisect import bisect_left, bisect_right

import sys
sys.setrecursionlimit(1000000000)
mod = 10 ** 9 + 7

#############
# Main Code #
#############
S = input()
if (S[0] != S[-1]) ^ (len(S) % 2):
    print('Second')
else:
    print('First')

Submission status: Accepted

Solution code:
s=input()
n=len(s)
now=s[0]
next=s[1]
flag=False
for i in range(2,n):
    if now!=s[i]:
        flag=True
        break
    if i==n-1:
        break
    now=next
    next=s[i]
if flag==False:
    print("Second")
else:
    if s[0]==s[n-1]:
        ans=n-3
        if ans%2==0:
            print("Second")
        else:
            print("First")
    else:
        ans=n-2
        if ans%2==0:
            print("Second")
        else:
            print("First")

Submission status: Accepted

Solution code:
S=input()
print(['First','Second'][(S[0]!=S[-1])^(len(S)%2)])

Submission status: Accepted

Solution code:
s=input()
if (len(s)%2==0)^(s[0]==s[-1]):
  print("Second")
else:
  print("First")

Submission status: Accepted

Solution code:
s=input()
l=len(s)
if s[0]==s[-1]:
    if l%2==0:
        print("First")
    else:
        print("Second")
else:
    if l%2==1:
        print("First")
    else:
        print("Second")

Submission status: Accepted

Solution code:
import sys
def LS2():
    return list(sys.stdin.readline().rstrip())  #空白なし

s = LS2()

if s[0] == s[-1]:
    print('First' if len(s) % 2 == 0 else 'Second')
else:
    print('Second' if len(s) % 2 == 0 else 'First')

Submission status: Accepted

Solution code:
s=input()
print("Second"if(len(s)%2==0)^(s[0]==s[-1])else"First")

Submission status: Accepted

Solution code:
s=input()
if s[0]==s[-1]:
  if len(s)%2==1:
    print('Second')
  else:
    print('First')
else:
  if len(s)%2==1:
    print('First')
  else:
    print('Second')

Submission status: Accepted

Solution code:
a = input()
n = len(a)
if a[0] != a[-1]:
  n += 1
if n % 2 == 0:
  print("First")
else:
  print("Second")

Submission status: Accepted

Solution code:
def main():
    s = input()
    n = len(s)
    if s[0] == s[-1]:
        if n%2 == 1:
            print("Second")
        else:
            print("First")
    else:
        if n%2 == 0:
            print("Second")
        else:
            print("First")

if __name__ == "__main__":
    main()

Submission status: Accepted

Solution code:
import sys

readline = sys.stdin.readline
MOD = 10 ** 9 + 7
INF = float('INF')
sys.setrecursionlimit(10 ** 5)


def main():
    s = input()
    l = len(s)
    win_first = False

    if s[0] == s[-1]:
        if l % 2 == 0:
            win_first = True
    else:
        if l % 2 == 1:
            win_first = True

    if win_first:
        print("First")
    else:
        print("Second")


if __name__ == '__main__':
    main()

Submission status: Accepted

Solution code:
#!python3

# input
s = input()


def main():
    n = len(s)
    if s[0] != s[-1]:
        ans = "First" if n % 2 == 1 else "Second"
    else:
        ans = "First" if n % 2 == 0 else "Second"
    print(ans)


if __name__ == "__main__":
    main()

Submission status: Accepted

Solution code:
s = input()
if (len(s) % 2 == 1) ^ (s[0] == s[-1]):
    print('First')
else:
    print('Second')

Submission status: Accepted

Solution code:
s=input()
from collections import Counter
cs=Counter(s)
if len(cs.keys())==2:
  print('Second')
elif s[0]!=s[-1]:
  if len(s)%2==0:
    print('Second')
  else:
    print('First')
else:
  if len(s)%2!=0:
    print('Second')
  else:
    print('First')

Submission status: Accepted

Solution code:
#import sys
#import numpy as np
#import math
#import itertools
#from fractions import Fraction
#import itertools
from collections import deque
#import heapq
#from fractions  import gcd
#input=sys.stdin.readline
#import bisect

s=input()
n=len(s)
if s[0]==s[-1]:
    x=s[0]
    for i in range(2,len(s)-1,2):
        if s[i]!=x:
            if (n-3)%2==0:
                print("Second")
            else:
                print("First")
            break
    else:
        print("Second")
else:
    x=s[-1]
    y=s[0]
    for i in range(1,len(s),2):
        if s[i]!=x:
            if (n-2)%2==0:
                print("Second")
            else:
                print("First")
            break
    else:
        for i in range(2,len(s),2):
            if s[i]!=y:
                if (n-2)%2==0:
                    print("Second")
                else:
                    print("First")
                break
        else:
            print("Second")

Submission status: Accepted

Solution code:
s = input()
if (s[0] == s[-1] and len(s) % 2 == 0) or (s[0] != s[-1] and len(s) % 2 == 1):
    print("First")
else:
    print("Second")

Submission status: Accepted

Solution code:
s = input()
n = len(s)
print("Second" if (n&1)==(s[0]==s[-1]) else "First")

Submission status: Accepted

Solution code:
s = input()
if (len(s) + (s[0] == s[-1])) % 2:
  print('First')
else:
  print('Second')

Submission status: Accepted

Solution code:
import sys
def main():
    s=list(sys.stdin.readline().strip())
    t=0
    while len(s)>2:
        ps,cs,i,f=s[0],s[1],1,False
        for ns in s[2:]:
            if ps!=ns:
                cs,f,t=ns,True,t^1
                s.pop(i)
            else:ps,cs,i=cs,ns,i+1
        if f is False:break
    print('First') if t==1 else print('Second')
if __name__=='__main__':main()

Submission status: Accepted

Solution code:
s = input()
if s[0] == s[-1] and len(s)%2 == 0:
    print("First")
elif s[0] != s[-1] and len(s)%2 == 1:
    print("First")
else:
    print("Second")

Submission status: Accepted

Solution code:
a = input()
if ((a[0] == a[-1]) ^ len(a))%2 == 0:
 print("Second")
else:
 print("First")

Submission status: Accepted

Solution code:
import sys
s = input()
for i,c in enumerate(s[1:-1],1):
  if s[i-1]!=s[i+1]:
    break
else:
  print('Second')
  sys.exit()
if s[0]==s[-1]:
  if len(s)%2==0:
    print('First')
  else:
    print('Second')
if s[0]!=s[-1]:
  if len(s)%2==0:
    print('Second')
  else:
    print('First')

Submission status: Accepted

Solution code:
# -*- coding: utf-8 -*-
import sys
sys.setrecursionlimit(10**9)
INF=10**18
MOD=10**9+7
input=lambda: sys.stdin.readline().rstrip()
YesNo=lambda b: bool([print('Yes')] if b else print('No'))
YESNO=lambda b: bool([print('YES')] if b else print('NO'))
int1=lambda x:int(x)-1

def main():
    s=input()
    if s[0]!=s[-1]:
        if len(s)%2==0:
            print('Second')
        else:
            print('First')
    else:
        if len(s)%2==0:
            print('First')
        else:
            print('Second')

if __name__ == '__main__':
    main()

Submission status: Accepted

Solution code:
S=input()
N=len(S)

if S[0]==S[-1]:
    if N%2==1:
        res = 'Second'
    else:
        res = 'First'
else:
    if N%2==0:
        res = 'Second'
    else:
        res = 'First'

print(res)

Submission status: Accepted

Solution code:
s=list(input())

if (s[0]==s[-1])==(len(s)%2==0):
  print("First")
else:
  print("Second")

Submission status: Accepted

Solution code:
s=list(input())

if s[0]==s[-1]:
  if len(s)%2==0:
    print("First")
  else:
    print("Second")
else:
  if len(s)%2==0:
    print("Second")
  else:
    print("First")

Submission status: Accepted

Solution code:
S = input()
now_is_odd = len(S) % 2
last_is_odd = S[0] == S[-1]

if now_is_odd == last_is_odd:
  print('Second')
else:
  print('First')

Submission status: Accepted

Solution code:
s=input()
if s[0]==s[-1]:
  if len(s)%2:
    print("Second")
  else:
    print("First")
else:
  if not len(s)%2:
    print("Second")
  else:
    print("First")

Submission status: Accepted

Solution code:
s = input()

same = (s[0]==s[-1])
s_even = (len(s)%2 == 0)

if (same and s_even) or (not same and not s_even):
    ans = "First"
else:
    ans = "Second"
    
print(ans)

Submission status: Accepted

Solution code:
s = input()
ans = len(s)
if s[0] == s[-1]:
    ans += 1
ans %= 2
if ans:
    print('First')
else:
    print('Second')

Submission status: Accepted

Solution code:
s=input()
n=len(s)
if s[0]==s[-1]:
    n-=1
if n%2:
    print("First")
else:
    print("Second")

Submission status: Accepted

Solution code:
s = input()

if (len(s) % 2 == 0) ^ (s[0] == s[-1]):
    print("Second")
else:
    print("First")

Submission status: Accepted

Solution code:
s = input()
if s[0] == s[-1]:
    #最終的にababa...aの場合
    if len(s) % 2 == 1:
        print("Second")
    else:
        print("First")
else:
    #最終的にababa..bの場合
    if len(s) % 2 == 0:
        print("Second")
    else:
        print("First")

Submission status: Accepted

Solution code:
s = input()
eq = 1 if (s[0] == s[-1]) else 0
if (len(s) % 2) ^ eq:
  print("First")
else:
  print("Second")

Submission status: Accepted

Solution code:
# 解説

def main():
    s = input()
    n = len(s)

    parity = (n & 1)  # 初期長の偶奇=1->奇数,0->偶数
    same_chars = int(s[0] == s[-1])  # 最終長の偶奇=1->奇数,0->偶数

    cond = parity ^ same_chars  # 取り除ける個数の偶奇=1->奇数,0->偶数

    print('First' if cond else 'Second')


if __name__ == '__main__':
    main()

# 最終状態は複数考えられるが
# 共通する性質がある
# ababa
# ababab
# 交互に並ぶ
# 両端の文字が一致するかで、最終長の偶奇が定まる
# 元の長さの偶奇と比較すると、取れる個数の偶奇がわかる

Submission status: Accepted

Solution code:
s = input()
n = len(s)
if (s[0] == s[-1]) ^ (n % 2 != 0):
    print('First')
else:
    print('Second')

Submission status: Accepted

Solution code:
import sys

sys.setrecursionlimit(10 ** 7)
f_inf = float('inf')
mod = 10 ** 9 + 7


def resolve():
    s = input()
    n = len(s)

    if (n % 2 == 0) ^ (s[0] == s[-1]):
        print("Second")
    else:
        print("First")


if __name__ == '__main__':
    resolve()

Submission status: Accepted

Solution code:
s = input().strip()
N = len(s)
if N%2==0 and s[0]==s[-1]:
    print("First")
elif N%2==0 and s[0]!=s[-1]:
    print("Second")
elif N%2==1 and s[0]==s[-1]:
    print("Second")
else:
    print("First")

Submission status: Accepted

Solution code:
S = input()

def check():
    if (S[0]==S[-1])^(len(S)%2):
        return 'First'
    return 'Second'
print(check())

Submission status: Accepted

Solution code:
s = list(input())

if len(s) % 2 == 0:
    flag1 = True
else:
    flag1 = False

if s[0] == s[-1]:
    flag2 = True
else:
    flag2 = False

if (flag1 ^ flag2):
    print ('Second')
else:
    print ('First')

# print (s)

Submission status: Accepted

Solution code:
s = input()


if s[0] == s[-1]:
    if len(s) % 2 == 0:
        print("First")
    else:
        print("Second")
else:
    if len(s) % 2 == 0:
        print("Second")
    else:
        print("First")

Submission status: Accepted

Solution code:
s = input()
n = len(s)
if s[0] == s[-1]:
    if n % 2 == 0:
        print('First')
    else:
        print('Second')
else:
    if n % 2 != 0:
        print('First')
    else:
        print('Second')

Submission status: Accepted

Solution code:
S = input()
N = len(S)

print('First' if (N % 2) ^ (S[0] == S[-1]) else 'Second')

Submission status: Accepted

Solution code:
S = input()
N = len(S)

print('First' if (N % 2 == 1) ^ (S[0] == S[-1]) else 'Second')

Submission status: Accepted

Solution code:
S = input()
N = len(S)

if S[0] == S[-1]:
    print('First' if N % 2 == 0 else 'Second')
else:
    print('First' if N % 2 == 1 else 'Second')

Submission status: Accepted

Solution code:
s = str(input())
if ((len(s)%2) ^ (s[0] == s[-1])):print("First")
else:print("Second")

Submission status: Accepted

Solution code:
S = input()
if S[0] == S[-1]:
    l = len(S)-3
else:
    l = len(S)-2
print('First' if l%2 else 'Second')

Submission status: Accepted

Solution code:
import sys
import math
from collections import defaultdict
from bisect import bisect_left, bisect_right

sys.setrecursionlimit(10**7)
def input():
    return sys.stdin.readline()[:-1]

mod = 10**9 + 7

def I(): return int(input())
def LI(): return list(map(int, input().split()))
def LIR(row,col):
    if row <= 0:
        return [[] for _ in range(col)]
    elif col == 1:
        return [I() for _ in range(row)]
    else:
        read_all = [LI() for _ in range(row)]
        return map(list, zip(*read_all))

#################

# 2文字の繰り返しで負け
# これはs[0]=s[-1]なら奇数文字，s[0]!=s[-1]なら偶数文字

s = str(input())

if s[0] == s[-1]:
    if len(s)%2:
        print('Second')
    else:
        print('First')
else:
    if len(s)%2:
        print('First')
    else:
        print('Second')

Submission status: Accepted

Solution code:
# Beginner 50 D
s = list(input())

#文字数の偶奇
cont = len(s) % 2

#両端が同じ文字かどうか
edge = 0
if s[0] == s[-1]:
    edge = 0
else:
    edge = 1

def judge(a,b):
    key = str(a) + str(b)
    winner = {
        "00" : "First",
        "01" : "Second",
        "10" : "Second",
        "11" : "First"
    }
    print(winner[key])

judge(cont, edge)

Submission status: Accepted

Solution code:
s = input()
n = len(s)
if s[0] == s[-1]:
    if n % 2 == 1:
        print("Second")
    else:
        print("First")
else:
    if n % 2 == 0:
        print("Second")
    else:
        print("First")

Submission status: Accepted

Solution code:
s = input()

if s[0] == s[-1]:
    if len(s) % 2 == 1:
        print('Second')
    else:
        print('First')
else:
    if len(s) % 2 == 0:
        print('Second')
    else:
        print('First')

Submission status: Accepted

Solution code:
s = input()
ts = s[0]

te = s[-1:]

ls = len(s)

if ts != te:
    ls = ls+1
else:
    pass

if ls % 2 ==1:
    print("Second")
else:
    print("First")

Submission status: Accepted

Solution code:
import sys
import heapq, math
from itertools import zip_longest, permutations, combinations, combinations_with_replacement
from itertools import accumulate, dropwhile, takewhile, groupby
from functools import lru_cache
from copy import deepcopy

S = input()
print("Second" if (len(S) % 2 == 0) ^ (S[0] == S[-1]) else "First")

Submission status: Accepted

Solution code:
s = input()
a = (s[0] == s[-1])
b = len(s) % 2

ans = 'First' if a ^ b else 'Second'
print(ans)

Submission status: Accepted

Solution code:
# solution

data = input()
print("Second") if((data[0] == data[-1]) != (len(data)%2 == 0)) else print("First")

Submission status: Accepted

Solution code:
# coding: utf-8
import sys

sr = lambda: sys.stdin.readline().rstrip()
ir = lambda: int(sr())
lr = lambda: list(map(int, sr().split()))

S = sr()
length = len(S)
if S[0] == S[-1]:
    length += 1
bl = length & 1
print('First' if bl else 'Second')
# 39

Submission status: Accepted

Solution code:
s = input()
cnt = 0
arr = []
for i in range(len(s)):
    arr.append(s[i])
    while len(arr) >= 3 and arr[-3] != arr[-1]:
        a = arr.pop()
        b = arr.pop()
        arr.append(a)
        cnt += 1
print('First' if cnt % 2 else 'Second')

Submission status: Accepted

Solution code:
import sys

sys.setrecursionlimit(10 ** 6)
int1 = lambda x: int(x) - 1
p2D = lambda x: print(*x, sep="\n")
def II(): return int(sys.stdin.readline())
def MI(): return map(int, sys.stdin.readline().split())
def LI(): return list(map(int, sys.stdin.readline().split()))
def LLI(rows_number): return [LI() for _ in range(rows_number)]
def SI(): return sys.stdin.readline()[:-1]

def main():
    s=SI()
    if s[0]==s[-1]:cnt=len(s)-1
    else:cnt=len(s)
    if cnt%2:print("First")
    else:print("Second")

main()

Submission status: Accepted

Solution code:
S = list(input())
l = len(S)
l2 = l % 2

if S[0] != S[-1]:
  if l2 == 0:
    winner = "Second"
  else:
    winner = "First"
else:
  if l2 == 0:
    winner = "First"
  else:
    winner = "Second"

print(winner)

Submission status: Accepted

Solution code:
s=input()
if (s[0]==s[-1])^(len(s)%2==0):
  print("Second")
else:
  print("First")
  
# 最後の状態から逆算する

Submission status: Accepted

Solution code:
s=input()
if (s[0]==s[-1]):
    if len(s)%2==1:
        print("Second")
    else:
        print("First")
else:
    if len(s)%2==0:
        print("Second")
    else:
        print("First")

Submission status: Accepted

Solution code:
s=input()
x=(s[0]==s[-1])
y=len(s)%2
print('First' if x^y else 'Second')

Submission status: Accepted

Solution code:
s = input()
#s = 'abcab'

if (len(s) % 2 == 0) ^ (s[0] == s[len(s) - 1]) == False:
    print('First')
else:
    print('Second')

Submission status: Accepted

Solution code:
s= input()

c1 = (s[0] == s[-1])
c2 = (len(s)&1 == 0)

if c1^c2:
    print("Second")
else:
    print("First")

Submission status: Accepted

Solution code:
s = input()

if (len(s) % 2 == 0) ^ (s[0] == s[-1]):
    print("Second")
else:
    print("First")

Submission status: Accepted

Solution code:
s = input()
print('First' if (len(s)%2) ^ (s[0] == s[-1]) else 'Second')

Submission status: Accepted

Solution code:
S = input()

if S[0] == S[-1]:
    print('First' if len(S) % 2 == 0 else 'Second')
else:
    print('First' if len(S) % 2 == 1 else 'Second')

Submission status: Accepted

Solution code:
S = input()
if S[0]==S[-1]:
    print('Second' if len(S)%2 else 'First')
else:
    print('Second' if len(S)%2==0 else 'First')

Submission status: Accepted

Solution code:
s=input()
if s[0]==s[-1]:
    print("Second" if len(s)%2 else "First")
else:
    print("Second" if not len(s)%2 else "First")

Submission status: Accepted

Solution code:
import sys

input_methods=['clipboard','file','key']
using_method=0
input_method=input_methods[using_method]

IN=lambda : map(int, input().split())
mod=1000000007

#+++++

def xor(a,b):
	return (a and b) or ((not a) and (not b))

def main():
	s = input()
	ca=s[0]==s[-1]
	cb=len(s)%2==0
	win_first=xor(ca, cb)
	ret = 'First' if win_first else 'Second'
	
	print(ret)
	
#+++++
isTest=False

def pa(v):
	if isTest:
		print(v)
		
def input_clipboard():
	import clipboard
	input_text=clipboard.get()
	input_l=input_text.splitlines()
	for l in input_l:
		yield l

if __name__ == "__main__":
	if sys.platform =='ios':
		if input_method==input_methods[0]:
			ic=input_clipboard()
			input = lambda : ic.__next__()
		elif input_method==input_methods[1]:
			sys.stdin=open('inputFile.txt')
		else:
			pass
		isTest=True
	else:
		pass
		#input = sys.stdin.readline
			
	ret = main()
	if ret is not None:
		print(ret)

Submission status: Accepted

Solution code:
s=input()
N=len(s)
if s[0]==s[N-1]:
    if N%2==0:
        print('First')
    else:
        print('Second')
else:
    if N%2==1:
        print('First')
    else:
        print('Second')

Submission status: Accepted

Solution code:
def anordinarygame(s):

    ans = ""
    if s[0] == s[-1]:
        ans = "Second" if len(s) % 2 else "First"
    else:
        ans = "First" if len(s) % 2 else "Second"

    return ans

def main():
    s = list(str(input()))
    print(anordinarygame(s))

if __name__ == '__main__':
    main()

Submission status: Accepted

Solution code:
s = input()
if len(s)%2 == 1:
    if s[0] == s[-1]:
        print("Second")
    else:
        print("First")
else:
    if s[0] == s[-1]:
        print("First")
    else:
        print("Second")

Submission status: Accepted

Solution code:
S = input()
print('First' if (S[0] == S[-1]) ^ (len(S) % 2) else 'Second')

Submission status: Accepted

Solution code:


def I(): return int(input())
def MI(): return map(int, input().split())
def LI(): return list(map(int, input().split()))

def main():
    s=input()
    a=len(s)%2
    if s[0]==s[-1]:
        b=1
    else:
        b=0
        
    f=(a+b)%2
    
    if f==1:
        print("First")
    else:
        print("Second")
    
        
    
    
                    
            
        
        

main()

Submission status: Accepted

Solution code:
s = input()

if s[0] == s[len(s)-1] and len(s)%2 != 0:
    print('Second')
elif s[0] != s[len(s)-1] and len(s)%2 == 0:
    print('Second')
else:
    print('First')

Submission status: Accepted

Solution code:
import sys
readline = sys.stdin.buffer.readline

s = readline().rstrip().decode('utf-8')

n = len(s)

tf = True if s[0]==s[-1] else False

if n%2==0:
    if tf:
        print("First")
    else:
        print("Second")
else:
    if not tf:
        print("First")
    else:
        print("Second")

Submission status: Accepted

Solution code:
s = input()

if (s[0] == s[-1]) ^ len(s) % 2:
    ans = "First"
else:
    ans = "Second"

print(ans)

Submission status: Accepted

Solution code:
s=input()
if s[0]==s[len(s)-1]and len(s)%2==0:
    print("First")
if s[0]==s[len(s)-1]and len(s)%2==1:
    print("Second")
if s[0]!=s[len(s)-1]and len(s)%2==0:
    print("Second")
if s[0]!=s[len(s)-1]and len(s)%2==1:
    print("First")

Submission status: Accepted

Solution code:
s = input()
t = len(s)

l = s[0]
r = s[-1]

if l == r:
    t -= 3
else:
    f = 0
    for si in s[1:-2]:
        if si == l:
            f = 1
        if f and si == r:
            f = 2
    if f == 2:
        t -= 4
    else:
        t -= 2

if t % 2:
    print("First")
else:
    print("Second")

Submission status: Accepted

Solution code:
s = str(input())

if s[-1] == s[0]:
  if len(s)%2 == 0:
    print("First")
  else:
    print("Second")
  

else:
  if len(s)%2 == 1:
    print("First")
  else:
    print("Second")

Submission status: Accepted

Solution code:
s = input()

s_first = s[0]
s_last = s[-1]

# 偶数の場合
if (len(s) % 2 == 0):
    # a...a のような型 => 最終形は奇数
    if (s_first == s_last):
        print('First')
    # a...b のような型 => 最終形は偶数
    else:
        print('Second')
else:
    if (s_first == s_last):
        print('Second')
        # a...b のような型 => 最終形は偶数
    else:
        print('First')

Submission status: Accepted

Solution code:
s=input()
n=len(s)
if s[0]==s[-1]:
    if n%2==0:
        print("First")
    else:
        print("Second")
elif s[0]!=s[-1]:
    if n%2==1:
        print("First")
    else:
        print("Second")

Submission status: Accepted

Solution code:
s = input()
l = len(s)

if s[0] == s[l-1]:
  if l % 2 == 0:
    print('First')
  else:
    print('Second')
else:
  if l % 2 == 0:
    print('Second')
  else:
    print('First')

Submission status: Accepted

Solution code:
s = list(input())

if s[0] != s[-1]:
    if len(s)%2 == 0:
        print('Second')
    else:
        print('First')
else:
    if len(s)%2 != 0:
        print('Second')
    else:
        print('First')

Submission status: Accepted

Solution code:
s=input()

if(s[0]=='1'):
    print('Error')

if(s[0]==s[len(s)-1]):
    if(len(s) & 1): 
        print('Second')
    else:
        print('First')
else:
    if(len(s) & 1): 
        print('First')
    else:
        print('Second')

Submission status: Accepted

Solution code:
s = input()

num = len(s)

if (s[0] == s[num-1] and num%2 == 0) or (s[0] != s[num-1] and num%2 != 0):
    print('First')
else:
    print('Second')

Submission status: Accepted

Solution code:
S = input()
Answer = 'First'
if S[0] == S[-1] and len(S)%2 != 0:
  Answer = 'Second'
if S[0] != S[-1] and len(S) %2 == 0:
  Answer = 'Second'
print(Answer)

Submission status: Accepted

Solution code:
from copy import deepcopy
s = input()
t = deepcopy(s)
n = len(s)
flg = 0
x = 2
if s[0] == s[n-1]:
  if n%2:
    print("Second")
  else:
    print("First")
  exit()
for i in range(1,n-1):
  if s[i] == s[0] and flg:
    x += 1
    flg = 0
  elif s[i] == s[n-1] and not flg:
    x += 1
    flg = 1
if (n-x+flg)%2:
  print("First")
else:
  print("Second")

Submission status: Accepted

Solution code:
s = input()
print('Second' if (len(s) % 2 == 0) ^ (s[0] == s[-1]) else 'First')

Submission status: Accepted

Solution code:
s = input()
if (len(s) % 2 == 0) ^ (s[0] == s[-1]):
    print("Second")
else:
    print("First")

Submission status: Accepted

Solution code:
#
# 　　  ⋀_⋀　 
#　　  (･ω･)  
# .／ Ｕ ∽ Ｕ＼
#  │＊　合　＊│
#  │＊　格　＊│ 
#  │＊　祈　＊│ 
#  │＊　願　＊│ 
#  │＊　　　＊│ 
#      ￣
#
import sys
sys.setrecursionlimit(10**6)
input=sys.stdin.readline
from math import floor,sqrt,factorial,hypot,log #log2ないｙｐ
from heapq import heappop, heappush, heappushpop
from collections import Counter,defaultdict,deque
from itertools import accumulate,permutations,combinations,product,combinations_with_replacement
from bisect import bisect_left,bisect_right
from copy import deepcopy
from fractions import gcd
from random import randint
def ceil(a,b): return (a+b-1)//b
inf=float('inf')
mod = 10**9+7
def pprint(*A): 
    for a in A:     print(*a,sep='\n')
def INT_(n): return int(n)-1
def MI(): return map(int,input().split())
def MF(): return map(float, input().split())
def MI_(): return map(INT_,input().split())
def LI(): return list(MI())
def LI_(): return [int(x) - 1 for x in input().split()]
def LF(): return list(MF())
def LIN(n:int): return [I() for _ in range(n)]
def LLIN(n: int): return [LI() for _ in range(n)]
def LLIN_(n: int): return [LI_() for _ in range(n)]
def LLI(): return [list(map(int, l.split() )) for l in input()]
def I(): return int(input())
def F(): return float(input())
def ST(): return input().replace('\n', '')
def main():
    S=ST()
    """
        ababababa
        bababba
        のどちらかで終わる
        両端が同じなら上
        そうでないなら下のようになる
        
        つまり両端が同じなら奇数長になり
        そうでないなら偶数長になる
    """

    if (len(S)&1) == (S[0]==S[-1]):
        print("Second")
    else:
        print("First")


if __name__ == '__main__':
    main()