feat: add join-corresponding-sums

This commit is contained in:
AlanSilvaaa
2026-05-26 12:52:01 -04:00
parent 6329f9c06d
commit b4950cee35
9 changed files with 238 additions and 0 deletions

View File

@@ -2,6 +2,7 @@ from fastapi import APIRouter, HTTPException
from app.problems.grade_1 import (
compose_and_decompose_numbers,
join_corresponding_sums,
join_pictures_with_quantity,
sum_with_image_reference,
where_are_more_items,
@@ -9,6 +10,8 @@ from app.problems.grade_1 import (
from app.schemas.grade_1 import (
ComposeAndDecomposeNumbersProblem,
ComposeAndDecomposeNumbersRequest,
JoinCorrespondingSumsProblem,
JoinCorrespondingSumsRequest,
JoinPicturesWithQuantityProblem,
JoinPicturesWithQuantityRequest,
SumWithImageReferenceProblem,
@@ -20,6 +23,26 @@ from app.schemas.grade_1 import (
router = APIRouter(prefix="/grade_1", tags=["Grade 1"])
@router.post(
"/join_corresponding_sums",
response_model=JoinCorrespondingSumsProblem,
)
def create_join_corresponding_sums_problem(
request: JoinCorrespondingSumsRequest,
) -> dict:
try:
return join_corresponding_sums(
pair_count=request.pair_count,
min_sum=request.min_sum,
max_sum=request.max_sum,
min_addend=request.min_addend,
max_addend=request.max_addend,
seed=request.seed,
)
except ValueError as exc:
raise HTTPException(status_code=400, detail=str(exc)) from exc
@router.post(
"/compose_and_decompose_numbers",
response_model=ComposeAndDecomposeNumbersProblem,