뇌 마음 반반저장소

[push_swap] 프로그램 규칙 본문

42/push_swap

[push_swap] 프로그램 규칙

맹진저 2023. 1. 17. 20:55
728x90

V.3 Le programme "push_swap"

Nom du programme
push_swap

Fichiers de rendu
Makefile, *.h, *.c

Makefile
NAME, all, clean, fclean, re

Arguments
pile a : une liste d’entiers

Fonctions externes autorisées
• read, write, malloc, free, exit
• ft_printf et tout équivalent que VOUS avez codé

Libft autorisée
Oui

Description
Trier les piles

Votre projet doit respecter les règles suivantes :

당신의 프로젝트는 다음 규칙을 준수해야 한다.


• Vous devez rendre un Makefile qui compilera vos fichiers sources. Il ne doit pas relink.

소스 파일을 컴파일할 Makefile을 만들어야 한다. 리링크하면 안 돼.


• Les variables globales sont interdites.

전역 변수는 사용할 수 없다.


• Vous devez écrire un programme nommé push_swap qui prend en paramètre la pile a sous la forme d’une liste d’entiers. Le premier paramètre est au sommet de la pile (attention donc à l’ordre).

push_swap이라는 프로그램을 써야 하는데, 이 프로그램은 스택을 정수 목록으로 설정한다. 첫 번째 매개변수는 스택의 맨 위에 있다. (따라서 순서 주의.)


• Le programme doit afficher un programme composé de la plus courte suite d’instructions possible qui permet de trier la pile a, le plus petit nombre étant au sommet de la pile.

프로그램은 스택 a를 정렬할 수 있는 가능한 가장 짧은 일련의 지시사항으로 구성된 프로그램을 표시해야 하며, 가장 적은 숫자는 스택의 맨 위에 있어야 한다.


• Les instructions doivent être separées par un ’\n’ et rien d’autre.

지시문은 '\n'과 '\n'으로 구분되어야 한다.


• Le but est de trier les entiers avec le moins d’opérations possible. En évaluation, le nombre d’instructions calculé par votre programme sera comparé avec un nombre d’opérations maximum toléré. Si votre programme sort un programme trop long, ou si la liste d’entiers n’est pas triée, vous aurez 0.

목표는 가능한 적은 수의 연산으로 정수를 정렬하는 것이다. 평가에서, 당신의 프로그램에서 계산한 명령의 수는 최대 허용 동작의 수와 비교될 것이다. 프로그램이 너무 긴 프로그램을 종료하거나 전체 목록을 정렬하지 않으면 0이 됩니다.


• En cas d’erreur, vous devez afficher "Error" suivi d’un ’\n’ sur la sortie d’erreur. Par exemple, si certains paramètres ne sont pas des nombres, ne tiennent pas dans un int, ou encore, s’il y a des doublons.

에러가 발생하면 "Error" 다음에 "\n"을 출력해야 한다.

예를 들어, 일부 매개변수가 숫자가 아닌 경우, 정수 안에 있지 않거나 중복이 있는 경우.

 

$>./push_swap 2 1 3 6 5 8
sa
pb
pb
pb
sa
pa
pa
pa
$>./push_swap 0 one 2 3
Error

Pendant l’évaluation, un binaire sera fourni afin de tester votre programme correctement.

동료 평가 동안에, 프로그램을 제대로 테스트할 수 있는 바이너리가 제공된다.

 

Il fonctionnera ainsi 이케 작동한다 :

$>ARG="4 67 3 87 23"; ./push_swap $ARG | wc -l
6
$>ARG="4 67 3 87 23"; ./push_swap $ARG | ./checker_OS $ARG
OK
$>

Si le programme checker_OS affiche "KO", cela signifie que votre push_swap calcule un programme qui ne trie pas la liste.

만약 checker_OS 프로그램이 "KO"를 출력한다면, 이것은 당신의 push_swap이 목록을 정렬하지 않는 프로그램을 계산한다는 것을 의미한다.

 

728x90

'42 > push_swap' 카테고리의 다른 글

[push_swap] 규칙 파헤치기 (sa, sb, pa, pb, ra, rb, rra, rrb)  (0) 2023.01.17
[push_swap] 시작하며  (0) 2023.01.17
Comments