---
id: 697a49e6ff50d756c9b6935e
title: "Challenge 181: 2026 Winter Games Day 2: Snowboarding"
challengeType: 28
dashedName: challenge-181
---

# --description--

Given a snowboarder's starting stance and a rotation in degrees, determine their landing stance.

- A snowboarder's stance is either `"Regular"` or `"Goofy"`.
- Trick rotations are multiples of 90 degrees. Positive indicates clockwise rotation, and negative indicate counter-clockwise rotation.
- The landing stance flips every 180 degrees of rotation.

For example, given `"Regular"` and `90`, return `"Regular"`. Given `"Regular"` and `180` degrees, return `"Goofy"`.

# --hints--

`getLandingStance("Regular", 90)` should return `"Regular"`.

```js
assert.equal(getLandingStance("Regular", 90), "Regular");
```

`getLandingStance("Regular", 180)` should return `"Goofy"`.

```js
assert.equal(getLandingStance("Regular", 180), "Goofy");
```

`getLandingStance("Goofy", -270)` should return `"Regular"`.

```js
assert.equal(getLandingStance("Goofy", -270), "Regular");
```

`getLandingStance("Regular", 2340)` should return `"Goofy"`.

```js
assert.equal(getLandingStance("Regular", 2340), "Goofy");
```

`getLandingStance("Goofy", 2160)` should return `"Goofy"`.

```js
assert.equal(getLandingStance("Goofy", 2160), "Goofy");
```

`getLandingStance("Goofy", -540)` should return `"Regular"`.

```js
assert.equal(getLandingStance("Goofy", -540), "Regular");
```

`getLandingStance("Goofy", 90)` should return `"Goofy"`.

```js
assert.equal(getLandingStance("Goofy", 90), "Goofy");
```

# --seed--

## --seed-contents--

```js
function getLandingStance(startStance, rotation) {

  return startStance;
}
```

# --solutions--

```js
function getLandingStance(startStance, rotation) {
  const flips = Math.floor(Math.abs(rotation) / 180);
  if (flips % 2 === 0) {
    return startStance;
  } else {
    return startStance === "Regular" ? "Goofy" : "Regular";
  }
}
```
