![]() |
C++: Codeforces 1B
[Link nur für registrierte und freigeschaltete Mitglieder sichtbar. Jetzt registrieren...]
Mein Programm dazu [Link nur für registrierte und freigeschaltete Mitglieder sichtbar. Jetzt registrieren...] Arbeitet lokal einwanfrei. Auf dem Codeforces Server gibt aber BC23 zB. R23C53 statt R23C55 zurück. soviel ich erkannt habe liegt das daran das die zeile 40 den Wert in A[h][1] um 50 statt um 52 erhöht.(Das Kommentar in Zeile 39 gibt auf dem Server zumindest 50 aus) Ich hab das ganze allerdings getestet, in der Zeile müsste T[h2] ja B sein und h3 1(beides wird von Zeile 38 bestätigt.) Führe ich also nun printf("%d",('B'-'A'+1)*(int)pow(26,1)); auf dem Server aus, erscheint korrekt wie es sein sollte, 52. ich blick da überhaupt nicht mehr durch! Bevor ich vor pow das (int) gesetzt habe kam übrigens R23C54 auf dem Server raus. Bei mir weiterhin korrekt mit R23C55. btw. Ich nutze Ubuntu 12.10 Programmiere in Codeblocks mit dem gcc compiler. |
hast du es schonmal mit nem debugger versucht? hol dir gdb und setz an den entsprechenden stellen breakpoints
|
bei mir auf dem rechner läuft ja alles perfekt.
Auf dem Server von Codeforces werd ich schlecht debuggen können! |
Warum denn nicht?
|
Sollte ich die Frage jetzt ernst nehmen?
|
Klar, was sonst?
|
wie soll ich auf dem server, der nicht mir gehört, nen debugger installieren?
Es muss einfach irgendwas anders sein zwischen deren Testsystem und meinem. Compiler sollte beide gcc sein. auf codeforces hab ichs auch mit nem anderen getestet, kommt das selbe raus. Ascii tabellen sind auch identisch. |
in der zeile davor gebe ich die Parameter für
A[h][1]+=(T[h2]-'A'+1)*(int)pow(26,h3); aus. Allerdings kommt für (T[h2]-'A'+1)*(int)pow(26,h3) was anderes raus, als wenn ich die Variablen durch die zuvor ausgegebenen Werte ersetze, und sie damit ausführe. Allerdings nicht immer. Weiter komm ich mit meinem Verstand leider nicht. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:25 Uhr. |
Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.