Spoiler - My solution

Admittedly I skipped the point of this lecture by not writing my own test, instead copied the supplied one and rushed through writing my code. Partly because I was a bit confused as to how we wanted it formatted so checked the supplied test for that, and at that point I was like “meh I’ve looked at it now so I might as well just copy it”. :stuck_out_tongue_winking_eye:

public static string FormatRolls(List<int> rolls)
{
    string output = "";
    int framePosition = 0; // keep track of where we are as if not skipping a roll when get a strike (frame number = framePosition / 2, with remainder indicating whether in first or second bowl of frame)
    for (int i = 0; i < rolls.Count; i++)
    {
        if (rolls[i] == 10 && (framePosition % 2 == 0 || framePosition >=18) )
        {
            output += (framePosition < 18) ? "X " : "X";
            if (framePosition < 18) framePosition++;
        } else if (rolls[i] == 0) { 
            output += "-";
        } else if (framePosition % 2 == 1 && rolls[i] + rolls[i - 1] == 10) {
            output += "/";
        } else {
            output += rolls[i];
        }
        framePosition++;
    }
    return output;
}