Skip to content

Commit a0ab5ef

Browse files
committed
fix: handle .c files as well in France-IOI problems
1 parent ad853f4 commit a0ab5ef

File tree

2 files changed

+6
-7
lines changed

2 files changed

+6
-7
lines changed

scripts/France-IOI/README.template.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -22,15 +22,15 @@ Accepted solutions of [France-IOI problemset](https://www.france-ioi.org/algo/ch
2222
### {{ chapter }}
2323

2424
{% for problem in content.problems %}
25-
1. <a href="{{ level | replace(' ', '%20') }}/{{ chapter | replace(' ', '%20') }}/{{ problem.title | replace(' ', '%20') }}.cpp"> 💻 {{ problem.title }} </a>
25+
1. <a href="{{ level | replace(' ', '%20') }}/{{ chapter | replace(' ', '%20') }}/{{ problem.title | replace(' ', '%20') }}.{{ problem.extension }}"> 💻 {{ problem.title }} </a>
2626
{% endfor %}
2727

2828
{% for part in content.parts %}
2929

3030
1. **{{ part.part }}**
3131

3232
{% for subproblem in part.problems %}
33-
1. <a href="{{ level | replace(' ', '%20') }}/{{ chapter | replace(' ', '%20') }}/{{ part.part | replace(' ', '%20') }}/{{ subproblem.title | replace(' ', '%20') }}.cpp"> 💻 {{ subproblem.title }} </a>
33+
1. <a href="{{ level | replace(' ', '%20') }}/{{ chapter | replace(' ', '%20') }}/{{ part.part | replace(' ', '%20') }}/{{ subproblem.title | replace(' ', '%20') }}.{{ subproblem.extension }}"> 💻 {{ subproblem.title }} </a>
3434
{% endfor %}
3535

3636
{% endfor %}

scripts/France-IOI/generate.py

+4-5
Original file line numberDiff line numberDiff line change
@@ -39,17 +39,17 @@ def generate_data_from_folder(path):
3939
part_data = []
4040
for idx, file in enumerate(sorted(os.listdir(part_or_file_path))):
4141
if file.endswith('.cpp') or file.endswith('.c'):
42-
problem_title = file.rsplit('.', 1)[0]
42+
[problem_title, extension] = file.rsplit('.', 1)
4343
problem_id = idx + 1
44-
part_data.append({"id": problem_id, "title": problem_title})
44+
part_data.append({"id": problem_id, "title": problem_title, "extension": extension})
4545
if part_data:
4646
chapter_data["parts"].append({"part": part_or_file, "problems": part_data})
4747
else:
4848
# Handle problems directly in the chapter
4949
if part_or_file.endswith('.cpp') or part_or_file.endswith('.c'):
50-
problem_title = part_or_file.rsplit('.', 1)[0]
50+
[problem_title, extension] = part_or_file.rsplit('.', 1)
5151
problem_id = len(chapter_data["problems"]) + 1
52-
chapter_data["problems"].append({"id": problem_id, "title": problem_title})
52+
chapter_data["problems"].append({"id": problem_id, "title": problem_title, "extension": extension})
5353

5454
if chapter_data["parts"] or chapter_data["problems"]:
5555
level_data[chapter_dir] = chapter_data
@@ -68,7 +68,6 @@ def generate_data_from_folder(path):
6868
# Generate the data from the folder structure
6969
logging.info('Starting content generation')
7070
data = generate_data_from_folder(FRANCE_IOI_SOLUTIONS_DIR)
71-
print(data)
7271

7372
# Render the README with data
7473
logging.info('Rendering the README')

0 commit comments

Comments
 (0)