Блог пользователя homakov

Автор homakov, 15 лет назад, По-русски
В 4ом все работало, в этом - руби сакс.
Из двух задач A и C обе провалились на 1ом тесте.
На локалке все работало, алгоритм чистый.

Судя по мониторингу Статуса, все с Ruby также попали на 1ом тесте.
Как я только не вертелся - и g["+"] и g[0].to_s==43 и даже регулярки задействовал, но все зря.

Желаю увидеть поправки к a:
http://pastebin.com/HJgLqAeD
C:
http://pastebin.com/acYKZm05

Ошибки
Ошибка времени исполнения на тесте 1
Ошибка представления данных на тесте 1
Хотя время стояло 30 мс и память около кб.

И вообще - как обращаться к stdin? while(g=gets)?
Рубисты, подскажите?
На другой язык переходить уже не было времени, жаль (

Полный текст и комментарии »

  • Проголосовать: нравится
  • 0
  • Проголосовать: не нравится

Автор homakov, 15 лет назад, По-русски
Понравилось, особенно 1ая( =) ).
it=gets.chomp.to_i;
p (it%2==0 and it!=2)?"YES":"NO";

А вот вторую писал в попыхах и говнокода на порядок больше:

d,sumTime=gets.split(" ");
d=d.to_i()
sumTime=sumTime.to_i()
i=0;
time=[];
maxTime=[];
full_count=0;
minSum=0;
maxSum=0;
while ggets=gets
  x,y=ggets.split(" ");
  x=x.to_i();
  y=y.to_i();
  full_count+=x;
  minSum+=x;
  maxSum+=y;
  time[i]=x.to_i;
  maxTime[i]=y.to_i;
  i+=1;
end

if sumTime>maxSum or sumTime<minSum
  puts 'NO';
else

i=0;
while full_count!=sumTime

if i==d
i=0;
end
  if(maxTime[i]>time[i])
  time[i]+=1;
  full_count+=1;
  else
  next
end

i+=1;
end

puts 'YES';
p time.join(" ");
end

Третья:
count=gets.chomp.to_i();
base={}
answer='';
out='';
count.times do
g=gets.chomp.to_s;

if base[g]!=1
base[g]=1;
out+="OK\n";
else
cnt=0;

while true
cnt+=1;
answer=g+cnt.to_s();

if base[answer]!=1
    base[answer]=1
    out+=answer+"\n";
    break
end

end
end

end

puts out


Вторая кстати не прошла валидацию, подскажите почему?




Полный текст и комментарии »

  • Проголосовать: нравится
  • +1
  • Проголосовать: не нравится