Escriba un programa o función que tome una sola cadena que contenga solo az minúscula, e imprima o devuelva un valor verdadero si la palabra es la versión femenina de lo que representa y un valor falso si es la versión masculina . Por ejemplo, hen
es la versión femenina para pollo y rooster
es la versión masculina, por lo que hen
podría producir 1
y rooster
podría producir 0
.
Por supuesto, hacer esto para todas las palabras en inglés que reflejan género sería demasiado difícil de manejar. Su programa / función solo necesita admitir 20 pares masculinos / femeninos. A continuación se presentan cinco conjuntos de 10 pares masculinos / femeninos, clasificados por tema. Elige cualquiera de los dos conjuntos; Los 20 pares totales en estos dos conjuntos son las 40 palabras para las que su programa / función debe funcionar.
(el formato es masculine_version feminine_version
)
General
he she him her man woman boy girl male female masculine feminine guy gal lad lass mister miss sir madam
Familiar
father mother dad mom pa ma son daughter brother sister husband wife grandfather grandmother grandpa grandma uncle aunt nephew niece
Animal
lion lioness rooster hen stallion mare bull cow drake duck boar sow buck doe ram ewe gander goose billy nanny
Real
king queen prince princess emperor empress duke duchess marquess marchioness earl countess baron baroness baronet baronetess lord lady knight dame
Fantástico
wizard witch giant giantess incubus succubus nidorino nidorina nidoking nidoqueen ents entwives hanuvoite inimeite centaur centaurides merman mermaid khal khaleesi
Entonces, por ejemplo, puede elegir las categorías General y Familiar. Entonces, cualquier entrada de he
a sir
o father
a nephew
produciría un valor Falsy, y cualquier entrada de she
a madam
o mother
a niece
produciría un valor Truthy.
No todos los valores tienen que ser del mismo tipo verdadero / falso, por ejemplo, he
podría producir 0
pero sir
podría producir false
. Puede suponer que solo se ingresan las 40 palabras az específicas en minúsculas de las dos categorías seleccionadas.
La respuesta más corta en bytes gana. Tiebreaker es una publicación anterior.
(Este desafío no tiene la intención de correlacionar o hacer declaraciones sobre cualquier problema social actual basado en el género ).
fuente
count
ser el masculino decountess
?Respuestas:
Retina , 26 bytes (conjuntos 4, 5)
Retina es el lenguaje de expresiones regulares de @ MartinBüttner. No he usado nada específico para las expresiones regulares .NET, por lo que puede probar la expresión regular en Regex101 aquí . Alternativamente, puede usar el
G
modo grep de Retina de esta manera:y canalizar en un archivo con una palabra por línea para la prueba por lotes.
Retina genera el número de coincidencias de forma predeterminada, dándonos nuestro valor verdadero / falso. La regla "no todos los valores tienen que ser del mismo tipo verdadero / falso" es bastante importante ya que
marchioness
coincide dos veces, dando una salida de 2.(El uso del método de encadenamiento de mod de la pregunta masculina / femenina anterior parece ser más corto en CJam, pero dejaré que alguien más lo haga)
fuente
Retina,
3932 bytes (conjuntos 2, 4)La contabilidad
marquess
era molesta, ya que usarma
era la mejor manera de obtener algunas de las mujeres.Pruébalo aquí
Gracias a Sp3000 por su sugerencia de golf.
fuente
$
eso.Retina, 28 bytes (conjuntos 3,4)
La retina usa expresiones regulares .NET, pero cualquier sabor debería funcionar. Pruébelo en Regex101 .
fuente