Челленджи
Собственно, вот. Начались пятнадцать минут, когда игра из подобия ACM превращается в подобие Quake. Кто как действует? Кого и по каким задачам выбирает в качестве жертвы? Как определяет (если!), читая код, где может быть баг и как составляет стресс-тесты (вручную или можно как-то генерить).
И, самое важное, какой экспирьенс мы с этого выносим, если рассматривать TopCoder в качестве тренировки для ACM?
И, самое важное, какой экспирьенс мы с этого выносим, если рассматривать TopCoder в качестве тренировки для ACM?
Очевидно было что я говорил немного иронично :о)
В любом случае e-judge к которой ты имеешь полуадминские права с возможностью при надобности посмотреть/исправить тест или пнуть автора чтобы тот исправил баги лучше любой другой :о)
>Можно ли как-нибудь узнать каким тестом завалили мое решение?
ну или после конца фазы челленджей спросить у почелленджившего)
Связаться с ними :о)
> А еще вроде в history сохраняется челлендж кейс...
В арене не сохраняется - по крайней мере раньше точно не было
Но на сайте потом есть - правда сайт долго ждать пока обновится, так что всегда лучше спросить конечно
Я вот на последнем срме долго думал, челенжить чувака на C/Cpp по поводу range check'а (ну у него был массивчик 1000 на 1000, а он обращался к 1002 элементу типа) или не челенжить, в итоге наученный горьким опытом, что если тупой и не сдал 500, лучше не челенжить если не уверен (потому что сразу место возрастает раза в три =) ), решил поберечь очки.
Систест сказал что все-таки решение-то его упало!
Причем как-то странно упало, на тесте <997, 1000>, т.е. в любом случае если бы он и перешел за границу, все равно остался бы в том же участке памяти, где хранится все тот же массив => не должно было быть рантайма.
Но он был!
Это я к чему:
Если есть знатоки проверяющей системы арены, расскажите плз про range check'и на Cpp, м?
На Java насколько я понимаю все всегда валится ибо насильная проверка со стороны джава-машины..
А в твоем случае я думаю был еще какой-то рантайм в решении.
ну вроде там ничего не было интеллектуального.
там было тупо
int a[1001][1001];
..
for (int i = 0; i < w; i++ ){
for (int j = 0; j < h; j++) {
if (!a[i][j]) {
a[i + 2][j] = 1;
a[i][j + 2] = 1;
}
}
}
где w,h <= 1000
#include <stdio.h>
int a[1005];
int main(){
for( int i = 0; ; ++ i ) { a[i] = i; printf( "%d\n", a[i] ); }
return 0;}
Запусти и посмотри когда упадет :о)
У меня падает на 1009