|
Ha nincs otthon a macska, cincognak az egerek
Adott a következő fejlécállomány:
myheader.h
#ifndef _MYHEADER_H #define _MYHEADER_H 1
int foo(char *, int);
#endif /* myheader.h */
letöltés szöveges állományként
Írja meg a myheader.h állományban deklarált foo() függvényt, amely
paraméterként megkap egy sztringet, valamint egy n pozitív egész számot! A sztring
egy egérlyukakkal teli szoba egy falát írja le, ahol 'O' (nagy O betű) egy
egérlyukat jelöl, '>' egy jobb felé néző egeret, '<' egy bal
felé néző egeret, a '.' (pont) karakter pedig a fal többi részét. A fal mindkét
végében, a szoba sarkaiban található egy-egy egérlyuk.
Brit tudósok bebizonyították, hogy ha az egerek macskát szimatolnak a közelben, akkor
ijedtükben abba az irányba kezdenek el szaladni, amerre éppen néznek. Az egerek mindegyike
egységnyi utat tesz meg egy másodperc alatt, és amint elérnek egy egérlyukat, fürgén be is
bújnak oda. Ha két egér szembetalálkozna egymással a fal mentén menekülés közben, akkor
időveszteség nélkül ügyesen kikerülik egymást, és futnak tovább.
A függvény igaz értéket adjon vissza, ha egy n másodperc múlva érkező macska nem
talál egyetlen egeret sem a fal mellett, és hamisat egyébként!
Megjegyzés
A függvényt helyezze a foo.c nevű állományba, és ezt az állományt küldje
be megoldásként a kiértékelő rendszernek! Megoldását az alábbi állományok segítségével
tesztelheti. Megoldásának kiértékelését a tesztelő rendszer nem feltétlenül ezeknek az
állományoknak a felhasználásával végzi!
main.c
#include <stdio.h> #include <stdlib.h> #include "myheader.h"
int main() { char line[1000]; int n; while (scanf("%s %d", line, &n) != EOF) puts(foo(line, n) ? "YES" : "NO");
return EXIT_SUCCESS; }
letöltés szöveges állományként
Makefile
SRCS = main.c foo.c OBJS = $(SRCS:%.c=%.o) TARGETS = main
.PHONY: clean
all: $(TARGETS)
main: $(OBJS) $(CC) $(OBJS) -o main
%.o: %.c $(CC) -Wall -c $< -o $@
clean: rm -rf $(OBJS) *~ $(TARGETS)
letöltés szöveges állományként
Példa bemenet
O..>.O...<..O 5 O..>.<..O 3 O..<.O 3
letöltés szöveges állományként
A példa tesztprogram kimenete
YES NO YES
letöltés szöveges állományként
|
|