Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » Rätselecke » Rechtecke finden

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
19.06.2008, 12:01 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)


Basierend auf dem Thread oben, hier mal in etwas abgeänderter Form:


C++:
#include <iostream>
using namespace std;

int b[10][15] = {{0,1,1,0,0,0,0,1,1,0,0,0,0,0,0},
                {0,1,1,3,3,3,3,1,1,0,0,0,0,0,0},
                {0,0,0,3,3,3,3,1,1,0,5,5,5,5,0},
                {0,0,0,3,3,3,0,1,1,0,5,5,5,5,0},
                {0,4,4,4,0,2,2,1,1,0,5,5,5,5,0},
                {0,4,4,4,0,2,2,0,2,2,2,6,6,0,0},
                {0,0,2,2,0,0,0,0,2,0,2,6,6,5,5},
                {0,2,2,1,1,1,0,1,3,3,0,0,0,5,5},
                {0,0,0,1,1,1,1,1,3,3,4,4,4,5,5},
                {0,0,0,0,0,0,0,0,0,0,4,4,4,4,4}};

//Gibt die Anzahl der Rechtecke in b zurück
int f()
{
    
}

int main()
{
    cout<<f();
    return 0;
}



Die funktion f() ist nach den üblichen Golfer Regeln zu implementieren, welche alle Rechtecke in b finden soll. Also alle zusammenhängenden Zahlenblöcke der selben Zahl die ein Rechteck bilden.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
19.06.2008, 13:28 Uhr
0xdeadbeef
Gott
(Operator)


Genauere Definition, bitte. Ist ein einzelner Pixel bereits ein Rechteck, ist 0 eine gültige Farbe, sollen Rechtecke, die in anderen Recktecken und/oder Formen enthalten sind, auch gezählt werden? Zum Beispiel könnte

Code:
1 1 1
1 1 1
1 1 0


je nach Zählweise als keine, zwei, oder eine Anzahl großer Haufen, die auszurechnen ich gerade zu faul bin, gezählt werden.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
19.06.2008, 14:17 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)



Zitat von 0xdeadbeef:
Ist ein einzelner Pixel bereits ein Rechteck,


nein

Zitat von 0xdeadbeef:

ist 0 eine gültige Farbe,


klar

Zitat von 0xdeadbeef:

sollen Rechtecke, die in anderen Recktecken und/oder Formen enthalten sind, auch gezählt werden? Zum Beispiel könnte

Code:
1 1 1
1 1 1
1 1 0


je nach Zählweise als keine, zwei, oder eine Anzahl großer Haufen, die auszurechnen ich gerade zu faul bin, gezählt werden.

Nein das da wäre keins
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
19.06.2008, 21:49 Uhr
~reyx at work
Gast


Wieso?
Laut deiner Definition oben würde ich da entweder

Code:
1 1 1
1 1 1


oder aber

Code:
1 1
1 1
1 1


oder sogar

Code:
1 1
1 1


durchaus als

Zitat:
alle zusammenhängenden Zahlenblöcke der selben Zahl die ein Rechteck bilden.

bezeichnen!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
20.06.2008, 08:56 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)


Dann wäre deine Lösung falsch

Da hängen ja noch zahlen dran die dafür sorgen das es keins mehr ist.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
21.06.2008, 20:12 Uhr
kronos
Quotenfisch
(Operator)


Dann suchen wir also eine Funktion, die die Anzahl der maximalen zusammenhängenden Blöcke gleicher Zahl, welche Rechtecke sind und mehr als eine Zahl enthalten, liefert. Fragt sich nur noch was du mit "üblichen Golfer Regeln" meinst, da du C++ verwendest und wir ja normalerweise in C golfen...
--
main($)??<-$<='?'>>2?main($-!!putchar(
(("$;99M?GD??(??/x0d??/a:???;a"+'?'/4)
??($??)+'?'/3-2-1+$%2)??''?')):'?';??>

Dieser Post wurde am 21.06.2008 um 20:17 Uhr von kronos editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
21.06.2008, 20:34 Uhr
kronos
Quotenfisch
(Operator)


Hab's mal 'runtergetippt, denke 200 ist eine vernünftiges Par.

Aja, ich komm auf 18 Rechtecke, stimmt das?
--
main($)??<-$<='?'>>2?main($-!!putchar(
(("$;99M?GD??(??/x0d??/a:???;a"+'?'/4)
??($??)+'?'/3-2-1+$%2)??''?')):'?';??>

Dieser Post wurde am 21.06.2008 um 20:35 Uhr von kronos editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ Rätselecke ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: