Metadata-Version: 2.4
Name: dancealgorithm
Version: 0.1.2
Summary: DanceAlgorithm: Instant DAA Algorithms, Lab Problem Sheets, Datasets, and Code Vault.
Author: DanceAlgorithm Maintainer
License-Expression: MIT
Project-URL: Homepage, https://github.com/AdityaxDeore/dancealgorithm
Keywords: dancealgorithm,daa,algorithms,problem-sheets,datasets,cli
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Education
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Dynamic: license-file

# ⚡ DanceAlgorithm

> **Instant DAA Problem Sheets, Datasets, Solutions & Algorithm Vault**  
> Download, extract, organize, and directly **import** all 24 Design & Analysis of Algorithms (DAA) lab practical problem sheets, datasets, and Java solutions cleanly onto your PC or Linux machine with a single command or Python import.

[![PyPI Version](https://img.shields.io/pypi/v/dancealgorithm.svg)](https://pypi.org/project/dancealgorithm/)
[![Python Version](https://img.shields.io/badge/python-3.9%2B-blue.svg)](https://www.python.org/)
[![OS: Windows & Linux](https://img.shields.io/badge/OS-Windows%20%7C%20Linux%20%7C%20macOS-lightgrey.svg)]()
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Zero Dependencies](https://img.shields.io/badge/dependencies-0%20runtime-brightgreen.svg)]()

---

## 🌟 The Magic Experience

### Option A: Install & Extract All 24 Problem Sheets

```powershell
pip install dancealgorithm; dance
```

Or run `dance` (or `dancealgorithm`) anytime in your terminal:

```powershell
dance
```

Your `C:\DAA_Assignments` folder (or `~/DAA_Assignments` on Linux) is cleanly populated with all 24 problem sheets:

```text
C:\DAA_Assignments\
├── MS - Customer/
│   ├── dataset.csv
│   └── Solution.java
├── MS - Commerce/
│   ├── dataset.csv
│   └── Solution.java
├── ...
├── GC - University/
│   └── Solution.java
└── LC - Drilling/
    └── Solution.java
```

---

## 🚀 Quick Terminal CLI Usage

### 1. View Algorithm Notes & Time Complexities directly on screen

No files extracted — instant terminal reference cheat sheets:

```powershell
# Merge Sort recurrence & analysis
dance MS.txt

# Quick Sort partition & analysis
dance QS.txt

# Dijkstra shortest path analysis
dance DA.txt

# Fractional Knapsack greedy proof
dance FK.txt

# 0/1 Knapsack dynamic programming
dance K.txt

# Multistage Graph backward DP
dance MSG.txt

# Graph Coloring backtracking analysis
dance GC.txt

# TSP - Least Cost Branch & Bound analysis
dance LC.txt
```

*(You can also use `dancealgorithm DA.txt`, `dance GC.txt`, or `dance DA`)*

### 2. Extract a Specific Assignment Folder

Extract only that particular folder:

```powershell
# Extract unquoted or quoted
dance MSG - Logistics
dance "DA - Smart"
dance "GC - Classroom"
dance "LC - Delivery"

# Or extract by problem number
dance 1
dance 13
dance 19
dance 24
```

### 3. List All Available Problem Sheets & Notes

```powershell
dance list
```

---

## 🐍 Option B: Direct Python Import

All 24 assignments can be directly inspected or extracted programmatically:

```python
import dancealgorithm

# 1. Access code directly
code = dancealgorithm.get("MSG - Logistics").code
print(code)

# 2. Extract a specific sheet
dancealgorithm.extract("MSG - Logistics")

# 3. Extract all sheets to custom destination
dancealgorithm.extract(destination="D:/MyLabs")

# 4. Open destination folder in system file manager (Windows, Linux, macOS)
dancealgorithm.open_folder()
```

---

## 📚 Complete Catalogue of All 24 DAA Problem Sheets

| No. | Algorithm | Category | Problem Sheet Title | Time Complexity |
|---|---|---|---|---|
| **01** | Merge Sort | Divide & Conquer | `MS - Customer` | $O(n \log n)$ |
| **02** | Merge Sort | Divide & Conquer | `MS - Commerce` | $O(n \log n)$ |
| **03** | Merge Sort | Divide & Conquer | `MS - Library` | $O(n \log n)$ |
| **04** | Quick Sort | Divide & Conquer | `QS - Movie` | $O(n \log n)$ avg |
| **05** | Quick Sort | Divide & Conquer | `QS - Commerce` | $O(n \log n)$ avg |
| **06** | Quick Sort | Divide & Conquer | `QS - Online` | $O(n \log n)$ avg |
| **07** | Fractional Knapsack | Greedy Method | `FK - Emergency` | $O(n \log n)$ |
| **08** | Fractional Knapsack | Greedy Method | `FK - Electric` | $O(n \log n)$ |
| **09** | Fractional Knapsack | Greedy Method | `FK - Advertisement` | $O(n \log n)$ |
| **10** | Dijkstra | Shortest Path | `DA - Smart` | $O(V^2)$ / $O(E \log V)$ |
| **11** | Dijkstra | Shortest Path | `DA - Campus` | $O(V^2)$ / $O(E \log V)$ |
| **12** | Dijkstra | Shortest Path | `DA - Flight` | $O(V^2)$ / $O(E \log V)$ |
| **13** | Multistage Graph | Dynamic Programming | `MSG - Logistics` | $O(V + E)$ |
| **14** | Multistage Graph | Dynamic Programming | `MSG - Skyconnect` | $O(V + E)$ |
| **15** | Multistage Graph | Dynamic Programming | `MSG - Emergency` | $O(V + E)$ |
| **16** | 0/1 Knapsack | Dynamic Programming | `K - Disaster` | $O(n \cdot W)$ |
| **17** | 0/1 Knapsack | Dynamic Programming | `K - Hospital` | $O(n \cdot W)$ |
| **18** | 0/1 Knapsack | Dynamic Programming | `K - Cloud` | $O(n \cdot W)$ |
| **19** | Graph Coloring | Backtracking | `GC - University` | $O(V \cdot m^V)$ |
| **20** | Graph Coloring | Backtracking | `GC - Classroom` | $O(V \cdot m^V)$ |
| **21** | Graph Coloring | Backtracking | `GC - Interference` | $O(V \cdot m^V)$ |
| **22** | LC Branch and Bound | State Space Search | `LC - Delivery` | $O(n! \cdot n^2)$ |
| **23** | LC Branch and Bound | State Space Search | `LC - Flight` | $O(n! \cdot n^2)$ |
| **24** | LC Branch and Bound | State Space Search | `LC - Drilling` | $O(n! \cdot n^2)$ |

---

## ⚙️ Configuration

View or update your default preferences:

```powershell
# Set custom destination folder
dance config --set-dest "D:\My_DAA_Folder"

# Reset configuration back to system defaults
dance config --reset
```

---

## 📄 License

MIT © [AdityaxDeore](https://github.com/AdityaxDeore)
