quynhanh2610's picture
Create main.py
d23af57 verified
Raw
History Blame Contribute Delete
684 Bytes
from fastapi import FastAPI
from pydantic import BaseModel
from typing import List
from compaction import compact
app = FastAPI(
title="Sliding Cubes Compaction API",
description="API for 2D/3D sliding cubes compaction simulator",
version="1.0.0"
)
class CompactRequest(BaseModel):
dimension: int
blocks: List[List[int]]
max_steps: int = 500
@app.get("/")
def root():
return {
"success": True,
"message": "Sliding Cubes Compaction API is running."
}
@app.post("/compact")
def compact_api(req: CompactRequest):
return compact(
dimension=req.dimension,
blocks=req.blocks,
max_steps=req.max_steps
)