Новый | Ковров33.ru | чат | история | события | каталог | карты | связь | Телефоны | Радио | арт | ICQ | ГАЛЕРЕЯ | погода | Вики |
КОВРОВ форум. Напиши то, что ты думаешь! Но думай, прежде чем написать!
Но думай, прежде чем написать!


Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
02-05-2025, 23:53:04

Войти
Правила общения ковровского форума.
* Начало Помощь Поиск Войти Регистрация
+  KF
|-+  Общий
| |-+  Образование (Модератор: LordNAM)
| | |-+  Чемпионат по программированию КИТ-2008
0 Пользователей и 1 Гость смотрят эту тему. « предыдущая тема следующая тема »
Страниц: 1 ... 5 6 [7] 8 9 10 Вниз Печать
Автор Тема: Чемпионат по программированию КИТ-2008  (Прочитано 28224 раз)
Dmitrii Bagayev
3 звезды
***

Рейтинг: +12/-12
Offline Offline

Пол: Мужской
Сообщений: 202

Лев


« Ответ #90 : 21-09-2008, 23:41:50 »

Вы знаете я просто упрямый. И могу сказать, что раньше люди пытались взлететь, падали, ломали ноги и руки и пытылись и в результате взлетели. И все конечно было не сразу.И хочу сказать мы запустили ракету под названием "КИТ" и мы будем бороться до конца. Удача команды в первую очередь зависят от самой команды, а тренеры у нас есть. И если мне участники говорят Дмитрий Викторович мы хотим побеждать я все отдам, чтобы это произошло.
Записан
Com
Гость
« Ответ #91 : 21-09-2008, 23:50:12 »

Удача команды в первую очередь зависят от самой команды, а тренеры у нас есть.

Удача...

Значит по правилам удачи, вам ничего не светит теоретически...

Тем более с тренерами от бывшего филиала ВПИ...

Извините, погорячился, от "академии" (не поднимается рука писать с большой буквы и без кавычек)
« Последнее редактирование: 21-09-2008, 23:52:34 от Com » Записан
Dmitrii Bagayev
3 звезды
***

Рейтинг: +12/-12
Offline Offline

Пол: Мужской
Сообщений: 202

Лев


« Ответ #92 : 21-09-2008, 23:56:57 »

Может быть решим, а помощь нам оказывает серебряный призер чемпионата центральной России, аспирант ВлГУ Дмитрий Шевченко.
 
Даны два числа. Требуется найти их частное и остаток от деления.

Ввод
В первой строке находится делимое, во второй делитель. В каждом числе от 1 до 5 000 000 цифр. Все цифры в обоих числах одинаковы.

Вывод
В первой строке частное, во второй остаток от деления.

Ввод  Вывод 
111   10
11     1
 

Записан
Com
Гость
« Ответ #93 : 22-09-2008, 00:00:47 »

С такой то помощью...

На пачотнам сидьмом месте?
« Последнее редактирование: 22-09-2008, 00:02:30 от Com » Записан
Jaffar
8,5 звезд
********

Рейтинг: +548/-279
Offline Offline

Пол: Мужской
Сообщений: 9487


badrnglicher Hinweg auf Daheim des Altes


« Ответ #94 : 22-09-2008, 10:08:50 »

И если мне участники говорят Дмитрий Викторович мы хотим побеждать я все отдам, чтобы это произошло.
Боюсь, у вас денег не хватит.
Если уж домашний чемпионат провалили, на выезде еще больше облажаетесь.
Вы все-таки в Гану напишите. Африканцы в программировании не больно сильны, попробуйте нАчать с тамошнего чемпионата.
Записан

Рай находится под ногами матерей.. (Хадис)
glom
8 звёзд
********

Рейтинг: +163/-413
Offline Offline

Пол: Мужской
Сообщений: 5421

Стрелец


« Ответ #95 : 22-09-2008, 10:35:12 »

Дмитрий, Вы просто молодец. Отличная идея. Реализация уже не первый год. На болтунов не обращайте внимания и не траттье время на беспочвенные споры. Желаю Вам и вашим единомышленникам всяческих успехов. Дорогу осилит идущий !
Записан
belochka
Гость
« Ответ #96 : 22-09-2008, 11:20:22 »

Ну вот, блин.
марабеш припёрся на форум в Разговорах - абосрал ивО.
Терь доцент слюнкой брЫзгает.

Шли бы, вЫ, дОцент на свой академический сЦайтик.
____
 Дурачки какие та...
Записан
WolF
9 звёзд
*********

Рейтинг: +706/-1059
Offline Offline

Пол: Мужской
Сообщений: 15756


Телец

ооо какая офигенная палочка


« Ответ #97 : 22-09-2008, 12:13:08 »

Может быть решим, а помощь нам оказывает серебряный призер чемпионата центральной России, аспирант ВлГУ Дмитрий Шевченко.
 
Даны два числа. Требуется найти их частное и остаток от деления.

Ввод
В первой строке находится делимое, во второй делитель. В каждом числе от 1 до 5 000 000 цифр. Все цифры в обоих числах одинаковы.

Вывод
В первой строке частное, во второй остаток от деления.

Ввод  Вывод 
111   10
11     1

А в чем собственно задача то? Реализовать алгоритм деления "столбиком" для целых сверхдлинных чисел? Или я какого то подвоха в условии не вижу?
Записан

Настоящего друга нельзя купить, зато можно продать!
GREAT
Гость
« Ответ #98 : 22-09-2008, 17:37:09 »

да
а ф чем банан то?

(ктонить помнит как делить столбиком?)
Записан
belochka
Гость
« Ответ #99 : 22-09-2008, 17:57:29 »

А чо - аспиранЦы уже и столбиком делить разучилисЪ?
Записан
lichnost90
Гость
« Ответ #100 : 22-09-2008, 19:16:26 »

Ну если у дОцентов проблемы с орфографией (непонятно, как же других то учит, если сам пишет с ошибкамЕ?), то уж ихие аспиранцы-то точно делить углом и умножать столбиком не умеют!
Записан
belochka
Гость
« Ответ #101 : 22-09-2008, 20:10:58 »

Золотой Архив Ка-Фе сообщает:

ровно год назад глубокой ночЪю на благородных страницах великого Ка-Фе неожиданно материализовалась тема "Чемпионат по программированию КИТ-2007".
ПочОтный дОцент КГТА возвестил о начале эпохальных соревнований.
Команд было четыре. Экскурсии на троллейбусе не было.

Прочее было один в один.
Доблестная команда аспиранцев-программеров из КГТА заняла первое место с конца или последнее с начала.
Тема была закрЫта вследствие того, что благородный дОцент начал изрЫгать проклятия и угрозы в адрес почтенных форумчан и Великого Форума.
Записан
Dmitrii Bagayev
3 звезды
***

Рейтинг: +12/-12
Offline Offline

Пол: Мужской
Сообщений: 202

Лев


« Ответ #102 : 22-09-2008, 21:17:33 »

Код задачи на языке С:

//
// Written by Fyodor Menshikov 30.08.2008
//

#include <stdio.h>

char buffer[64 * 1024];
int bufferPos = sizeof(buffer);

char scan() {
   if (bufferPos == sizeof(buffer)) {
      fread(buffer, 1, sizeof(buffer), stdin);
      bufferPos = 0;
   }
   return buffer[bufferPos++];
}

void initout() {
   bufferPos = 0;
}

void flush() {
   fwrite(buffer, 1, bufferPos, stdout);
   bufferPos = 0;
}

void print(char c) {
   buffer[bufferPos++] = c;
   if (bufferPos == sizeof(buffer)) {
      flush();
   }
}

int main() {
   char digit = scan();
   int firstLen = 1;
   while (true) {
      char c = scan();
      if (c == '\n') {
         break;
      }
      firstLen++;
   }
   int secondLen = 0;
   while (true) {
      char c = scan();
      if (c == '\n') {
         break;
      }
      secondLen++;
   }
   if (secondLen > firstLen) {
      printf("0\n");
   } else {
      initout();
      int tillOne = 0;
      for (int i = 0; i < firstLen - secondLen + 1; i++) {
         if (tillOne == 0) {
            print('1');
            tillOne = secondLen - 1;
         } else {
            print('0');
            tillOne--;
         }
      }
      flush();
      printf("\n");
   }
   if (firstLen % secondLen == 0) {
      printf("0\n");
   } else {
      initout();
      for (int i = 0; i < firstLen % secondLen; i++) {
         print(digit);
      }
      flush();
      printf("\n");
   }
   return 0;
}
Записан
Dmitrii Bagayev
3 звезды
***

Рейтинг: +12/-12
Offline Offline

Пол: Мужской
Сообщений: 202

Лев


« Ответ #103 : 22-09-2008, 21:18:39 »

Код задачи на Delphi:
//
// Written by Fyodor Menshikov 30.08.2008
// TLE34, needs TL 5-6s (java needs 1s)
//
var
   digit : char;
   firstLen, secondLen : integer;
   i, tillOne : integer;
begin
   read(digit);
   firstLen := 1;
   while not eoln do begin
      inc(firstLen);
      read(digit);
   end;
   readln;
   secondLen := 0;
   while not eoln do begin
      inc(secondLen);
      read(digit);
   end;
   if secondLen > firstLen then begin
      writeln(0);
   end
   else begin
      tillOne := 0;
      for i := 1 to firstLen - secondLen + 1 do begin
         if tillOne = 0 then begin
            write('1');
            tillOne := secondLen - 1;
         end
         else begin
            write('0');
            dec(tillOne);
         end;
      end;
      writeln;
   end;
   if firstLen mod secondLen = 0 then begin
      writeln(0);
   end
   else begin
      for i := 1 to firstLen mod secondLen do begin
         write(digit);
      end;
      writeln;
   end;
end.
Записан
Dmitrii Bagayev
3 звезды
***

Рейтинг: +12/-12
Offline Offline

Пол: Мужской
Сообщений: 202

Лев


« Ответ #104 : 22-09-2008, 21:19:47 »

Код задачи на языке Java:

//
// Written by Fyodor Menshikov 30.08.2008
//

import java.io.*;

class Scanner {

   InputStream in;
   int c;
   static final int EOT = -1;

   Scanner(String fileName) {
      in = new BufferedInputStream(System.in);
      nextChar();
   }

   void nextChar() {
      try {
         c = in.read();
      } catch (IOException e) {
         throw new Error();
      }
   }
}

class PrintWriter {

   OutputStream out;
   byte buffer[] = new byte[64 * 1024];
   int bufLen = 0;

   PrintWriter(String fileName) {
      out = System.out;
   }

   void write(int c) {
      buffer[bufLen] = (byte)c;
      bufLen++;
      if (bufLen == buffer.length) {
         flush();
      }
   }

   void flush() {
      try {
         out.write(buffer, 0, bufLen);
         bufLen = 0;
      } catch (IOException e) {
         throw new Error();
      }
   }

   void close() {
      flush();
      try {
         out.close();
      } catch (IOException e) {
         throw new Error();
      }
   }
}

class solver {

   Scanner in = new Scanner("division.in");
   PrintWriter out = new PrintWriter("division.out");

   void asserT(boolean e) {
      if (!e) {
         throw new Error();
      }
   }

   void skipEol() {
      if (in.c == 13) {
         in.nextChar();
         if (in.c == 10) {
            in.nextChar();
         }
      } else if (in.c == 10) {
         in.nextChar();
      } else {
         throw new Error();
      }
   }

   void run() {
      int digit = in.c;
      asserT('1' <= digit && digit <= '9');
      int firstLen = 0;
      while (in.c == digit) {
         firstLen++;
         in.nextChar();
      }
      skipEol();
      asserT(in.c == digit);
      int secondLen = 0;
      while (in.c == digit) {
         secondLen++;
         in.nextChar();
      }
      skipEol();
      asserT(in.c == in.EOT);
      if (secondLen > firstLen) {
         out.write('0');
      } else {
         int tillOne = 0;
         for (int i = 0; i < firstLen - secondLen + 1; i++) {
            if (tillOne == 0) {
               out.write('1');
               tillOne = secondLen - 1;
            } else {
               out.write('0');
               tillOne--;
            }
         }
      }
      out.write(13);
      out.write(10);
      if (firstLen % secondLen == 0) {
         out.write('0');
      } else {
         for (int i = 0; i < firstLen % secondLen; i++) {
            out.write(digit);
         }
      }
      out.write(13);
      out.write(10);
      out.close();
   }

   public static void main(String args[]) {
      new solver().run();
   }
}
Записан
Страниц: 1 ... 5 6 [7] 8 9 10 Вверх Печать 
« предыдущая тема следующая тема »
Перейти в:  

Powered by SMF 1.1 RC2 | SMF © 2001-2006, Lewis Media