To solve this problem, we first need to define the symbolic representation of the variables and the objective function, followed by the constraints.

The two types of questions are long answer questions and multiple choice questions. Let's denote:
- \(x_1\) as the number of long answer questions,
- \(x_2\) as the number of multiple choice questions.

Given that long answer questions are worth 10 points each and multiple choice questions are worth 2 points each, the objective function to maximize the total score is:
\[ \text{Maximize: } 10x_1 + 2x_2 \]

The constraints based on the problem description are:
1. Total questions answered cannot exceed 15: \( x_1 + x_2 \leq 15 \)
2. Must answer at least 5 long answer questions: \( x_1 \geq 5 \)
3. Must answer at least 7 multiple choice questions: \( x_2 \geq 7 \)
4. Cannot answer more than 11 of either type: \( x_1 \leq 11 \) and \( x_2 \leq 11 \)

All \(x_1\) and \(x_2\) must be non-negative integers since they represent the number of questions.

Thus, the symbolic representation of the problem is:
```json
{
  'sym_variables': [('x1', 'number of long answer questions'), ('x2', 'number of multiple choice questions')],
  'objective_function': '10*x1 + 2*x2',
  'constraints': ['x1 + x2 <= 15', 'x1 >= 5', 'x2 >= 7', 'x1 <= 11', 'x2 <= 11']
}
```

Now, let's implement this in Gurobi using Python:

```python
from gurobipy import *

# Create a new model
m = Model("Math_Contest")

# Define the variables
x1 = m.addVar(vtype=GRB.INTEGER, name="long_answer_questions")
x2 = m.addVar(vtype=GRB.INTEGER, name="multiple_choice_questions")

# Set the objective function
m.setObjective(10*x1 + 2*x2, GRB.MAXIMIZE)

# Add constraints
m.addConstr(x1 + x2 <= 15, "total_questions")
m.addConstr(x1 >= 5, "min_long_answer")
m.addConstr(x2 >= 7, "min_multiple_choice")
m.addConstr(x1 <= 11, "max_long_answer")
m.addConstr(x2 <= 11, "max_multiple_choice")

# Optimize the model
m.optimize()

# Print the results
if m.status == GRB.OPTIMAL:
    print("Optimal solution found:")
    print(f"Number of long answer questions: {x1.x}")
    print(f"Number of multiple choice questions: {x2.x}")
    print(f"Maximum score: {m.objVal}")
else:
    print("No optimal solution found")
```