# cassiel13/beecrowd_resolutions architecture

> Architecture diagram of the GitHub repository cassiel13/beecrowd_resolutions, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-10). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/cassiel13/beecrowd_resolutions
- Repository: https://github.com/cassiel13/beecrowd_resolutions

## Overview

This repository is a set of independent Java solutions to introductory Beecrowd problems, not a shared application. For each solution, the workflow is: read problem data from standard input, calculate the requested value, and print the formatted answer. The files do not call one another. The README gives no additional product details; the connections shown are based on the sampled solution sources.

Main entry points: [`1001 - Extremely Basic.java`](https://github.com/cassiel13/beecrowd_resolutions/blob/main/1001%20-%20Extremely%20Basic.java) (Add Values), [`1003 - Simple Sum.java`](https://github.com/cassiel13/beecrowd_resolutions/blob/main/1003%20-%20Simple%20Sum.java) (Simple Sum), [`1004 - Simple Product.java`](https://github.com/cassiel13/beecrowd_resolutions/blob/main/1004%20-%20Simple%20Product.java) (Simple Product), [`1007 - Difference.java`](https://github.com/cassiel13/beecrowd_resolutions/blob/main/1007%20-%20%20Difference.java) (Difference)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_basics["Basic Arithmetic"]
  node_hello["Hello World"]
  node_basic["Add Values"]
  node_sum["Simple Sum"]
  node_product["Simple Product"]
  node_difference["Difference"]
end

subgraph group_averages["Weighted Averages"]
  node_average1["Average 1"]
  node_average2["Average 2"]
end

subgraph group_geometry["Geometry"]
  node_circle["Circle Area"]
  node_sphere["Sphere Volume<br/>[1011 - Sphere.java]"]
  node_areas["Shape Areas<br/>[1012 - Area.java]"]
end

subgraph group_pay["Salary and Costs"]
  node_salary["Salary<br/>[1008 - Salary.java]"]
  node_bonus["Salary Bonus"]
  node_calculate["Purchase Cost"]
end

node_input(("Problem Input"))
node_output(("Judge Output"))

node_input -->|"provides input"| node_basic
node_basic -->|"prints result"| node_output
node_input -->|"provides input"| node_sum
node_sum -->|"prints result"| node_output
node_input -->|"provides input"| node_product
node_product -->|"prints result"| node_output
node_input -->|"provides input"| node_difference
node_difference -->|"prints result"| node_output
node_input -->|"provides input"| node_average1
node_average1 -->|"prints result"| node_output
node_input -->|"provides input"| node_average2
node_average2 -->|"prints result"| node_output
node_input -->|"provides input"| node_circle
node_circle -->|"prints result"| node_output
node_input -->|"provides input"| node_sphere
node_sphere -->|"prints result"| node_output
node_input -->|"provides input"| node_areas
node_areas -->|"prints results"| node_output
node_input -->|"provides input"| node_salary
node_salary -->|"prints results"| node_output
node_input -->|"provides input"| node_bonus
node_bonus -->|"prints total"| node_output
node_input -->|"provides input"| node_calculate
node_calculate -->|"prints total"| node_output

click node_hello "https://github.com/cassiel13/beecrowd_resolutions/blob/main/1000%20-%20Hello%20World!.java"
click node_basic "https://github.com/cassiel13/beecrowd_resolutions/blob/main/1001%20-%20Extremely%20Basic.java"
click node_sum "https://github.com/cassiel13/beecrowd_resolutions/blob/main/1003%20-%20Simple%20Sum.java"
click node_product "https://github.com/cassiel13/beecrowd_resolutions/blob/main/1004%20-%20Simple%20Product.java"
click node_difference "https://github.com/cassiel13/beecrowd_resolutions/blob/main/1007%20-%20%20Difference.java"
click node_average1 "https://github.com/cassiel13/beecrowd_resolutions/blob/main/1005%20-%20Average%201.java"
click node_average2 "https://github.com/cassiel13/beecrowd_resolutions/blob/main/1006%20-%20Average%202.java"
click node_circle "https://github.com/cassiel13/beecrowd_resolutions/blob/main/1002%20-%20Area%20of%20a%20Circle.java"
click node_sphere "https://github.com/cassiel13/beecrowd_resolutions/blob/main/1011%20-%20Sphere.java"
click node_areas "https://github.com/cassiel13/beecrowd_resolutions/blob/main/1012%20-%20Area.java"
click node_salary "https://github.com/cassiel13/beecrowd_resolutions/blob/main/1008%20-%20Salary.java"
click node_bonus "https://github.com/cassiel13/beecrowd_resolutions/blob/main/1009%20-%20Salary%20with%20Bonus.java"
click node_calculate "https://github.com/cassiel13/beecrowd_resolutions/blob/main/1010%20-%20Simple%20Calculate.java"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_hello,node_basic,node_sum,node_product,node_difference toneBlue
class node_average1,node_average2 toneAmber
class node_circle,node_sphere,node_areas toneMint
class node_salary,node_bonus,node_calculate toneRose
class node_input,node_output toneIndigo
```

## Components

### Basic Arithmetic

- [Hello World](https://github.com/cassiel13/beecrowd_resolutions/blob/main/1000%20-%20Hello%20World!.java): `1000 - Hello World!.java`
- [Add Values](https://github.com/cassiel13/beecrowd_resolutions/blob/main/1001%20-%20Extremely%20Basic.java): `1001 - Extremely Basic.java`
- [Simple Sum](https://github.com/cassiel13/beecrowd_resolutions/blob/main/1003%20-%20Simple%20Sum.java): `1003 - Simple Sum.java`
- [Simple Product](https://github.com/cassiel13/beecrowd_resolutions/blob/main/1004%20-%20Simple%20Product.java): `1004 - Simple Product.java`
- [Difference](https://github.com/cassiel13/beecrowd_resolutions/blob/main/1007%20-%20%20Difference.java): `1007 - Difference.java`

### Weighted Averages

- [Average 1](https://github.com/cassiel13/beecrowd_resolutions/blob/main/1005%20-%20Average%201.java): `1005 - Average 1.java`
- [Average 2](https://github.com/cassiel13/beecrowd_resolutions/blob/main/1006%20-%20Average%202.java): `1006 - Average 2.java`

### Geometry

- [Circle Area](https://github.com/cassiel13/beecrowd_resolutions/blob/main/1002%20-%20Area%20of%20a%20Circle.java): `1002 - Area of a Circle.java`
- [Sphere Volume](https://github.com/cassiel13/beecrowd_resolutions/blob/main/1011%20-%20Sphere.java): `1011 - Sphere.java`
- [Shape Areas](https://github.com/cassiel13/beecrowd_resolutions/blob/main/1012%20-%20Area.java): `1012 - Area.java`

### Salary and Costs

- [Salary](https://github.com/cassiel13/beecrowd_resolutions/blob/main/1008%20-%20Salary.java): `1008 - Salary.java`
- [Salary Bonus](https://github.com/cassiel13/beecrowd_resolutions/blob/main/1009%20-%20Salary%20with%20Bonus.java): `1009 - Salary with Bonus.java`
- [Purchase Cost](https://github.com/cassiel13/beecrowd_resolutions/blob/main/1010%20-%20Simple%20Calculate.java): `1010 - Simple Calculate.java`

### Other components

- **Problem Input**
- **Judge Output**

## Connections

- Problem Input → Add Values: provides input (evidence: `1001 - Extremely Basic.java`)
- Add Values → Judge Output: prints result (evidence: `1001 - Extremely Basic.java`)
- Problem Input → Simple Sum: provides input (evidence: `1003 - Simple Sum.java`)
- Simple Sum → Judge Output: prints result (evidence: `1003 - Simple Sum.java`)
- Problem Input → Simple Product: provides input (evidence: `1004 - Simple Product.java`)
- Simple Product → Judge Output: prints result (evidence: `1004 - Simple Product.java`)
- Problem Input → Difference: provides input (evidence: `1007 -  Difference.java`)
- Difference → Judge Output: prints result (evidence: `1007 -  Difference.java`)
- Problem Input → Average 1: provides input (evidence: `1005 - Average 1.java`)
- Average 1 → Judge Output: prints result (evidence: `1005 - Average 1.java`)
- Problem Input → Average 2: provides input (evidence: `1006 - Average 2.java`)
- Average 2 → Judge Output: prints result (evidence: `1006 - Average 2.java`)
- Problem Input → Circle Area: provides input (evidence: `1002 - Area of a Circle.java`)
- Circle Area → Judge Output: prints result (evidence: `1002 - Area of a Circle.java`)
- Problem Input → Sphere Volume: provides input (evidence: `1011 - Sphere.java`)
- Sphere Volume → Judge Output: prints result (evidence: `1011 - Sphere.java`)
- Problem Input → Shape Areas: provides input (evidence: `1012 - Area.java`)
- Shape Areas → Judge Output: prints results (evidence: `1012 - Area.java`)
- Problem Input → Salary: provides input (evidence: `1008 - Salary.java`)
- Salary → Judge Output: prints results (evidence: `1008 - Salary.java`)
- Problem Input → Salary Bonus: provides input (evidence: `1009 - Salary with Bonus.java`)
- Salary Bonus → Judge Output: prints total (evidence: `1009 - Salary with Bonus.java`)
- Problem Input → Purchase Cost: provides input (evidence: `1010 - Simple Calculate.java`)
- Purchase Cost → Judge Output: prints total (evidence: `1010 - Simple Calculate.java`)
