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

Автор difask, история, 9 лет назад, По-русски

Всем привет!

Помогите решить задачу. Думал много над ней с друзьями, но решения на полный бал так и придумали.

Дано N<50 досок с известными длинами a[i]<10000. Их можно разрезать на любое количество досок. Есть доски которые нужно получить. Их M<1024, b[i]<128. Нужно найти максимальное количество досок, которое можно получить.

Example:
Input:
4
30 40 50 25
10
15 16 17 18 19 20 21 25 24 30
Output:
7
Explanation:
15 + 16 + 17 -> 50 (разрезаем 50 на 15, 16, 17, 50-15-16-17=2)
18 + 19 -> 40
20 -> 30
21 -> 25

Спасибо!

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

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

Автор difask, 9 лет назад, По-английски

Hello! I've found a lot of implementations on the internet. But I don't know which one should I remember. Can you give me your implementation? Thank you.

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

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

Автор difask, 10 лет назад, По-английски

Hello everyone!

For some month I was learning algorithms and how to write simple console applications. Today I want to start learning visual programming. I want to appeal to you, cool programmers. How do you recommend to start learning? Which IDE you use and why? What books(websites) you recommend to read(visit) me in the beginning? How did you start? What were your first programs?

Thank you very much!

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

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

Автор difask, 10 лет назад, перевод, По-русски

I have problem with implementing this algorithm. I know how to implement it if graph doesn't contain multiple edges and self edges. But now I'm trying with them. I know it's not hard. But it gives me WA. I don't know why. My code . Please help!!! Thanks!

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

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

Автор difask, 10 лет назад, По-английски

I have an interesting problem on data structures.

We're given an array a[1..n]. Also we're given queries l,r,m and it means that min(a[l]..a[r])=m. We should restore array a.

How to solve? Thank you!

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

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

Автор difask, 10 лет назад, По-русски

Новый вопрос: у меня почему-то каждые пару минут вылетает полигон(вылогинивается). Так и должно быть или нет? Как исправить? Спасибо!

Новый вопрос: у меня почему-то каждые пару минут вылетает полигон(вылогинивается). Так и должно быть или нет? Как исправить? Спасибо!

Новый вопрос(почему то не могу найти): а как скачать все тесты сразу?

Всем привет! Я пробовал написать задачу в полигоне. Написал чекер, валидатор. Они работают нормально. Также написал генератор. Вроде нормальный. Добавил несколько своих тестов, а также генератор с скриптом "generator.cpp 812 > {5-8}". Генератор добавил в "Source files"(хотя в другие места тоже пробовал добавлять). Компилируется нормально. Но когда пробую протестить решение, выдает, что файл "generator.cpp" не найден. Что делать? Куда нужно добавить файл? И как работать с генератором? Спасибо!!!

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

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

Автор difask, 10 лет назад, По-русски

Искал, но не смог найти. Возможно ли добавить групу людей в мешапы? Спасибо!

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

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

Автор difask, 10 лет назад, перевод, По-русски

Thanks Gassa for help. The working variant is such:

#define file "taskname"	
#ifdef ONLINE_JUDGE
#define in \
        //file name in task
	freopen(file".in", "r", stdin); \
	freopen(file".out", "w", stdout);
#else
#define in \
        //your file if you use files as input
	freopen("in.txt", "r", stdin);
        //freopen("out.txt", "w", stdout); 
#endif

int main()
{
   in;
}

It will make your code for I/O shorter.

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

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

Автор difask, 10 лет назад, По-английски

Hello! Is it possible to use something like "bits/stdc++.h" in Visual Studio? For those who mightn't know, "bits\stdc++.h" includes many headers, like iostream,algorithm,cstdio,cstdlib,vector and much more. Thank you!

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

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

Автор difask, 10 лет назад, перевод, По-русски

Hello! I've tried to come up with the solution for next problem but I can't. Please help! Problem: we have an array used, in the beginning used[i]=false for all i. And we are given 2 types of queries:

1) an index i. We should find the smallest index k of array such that used[k]=false and k>=i. For each query we should find this k and after each query do used[i]=true.

2) an index i. We should do used[i]=false. It is quarenteed that used[i]==true before query.

Thanks for help!

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

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

Автор difask, 10 лет назад, По-английски

Sometimes it happens that I solve the problem and I have tests, but I can't find problem on the internet. So I need a tester that can test my solution on tests. I tried to find it on the internet, but I can't. I will appreciate if you give me such program. Thank you!

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

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

Автор difask, 10 лет назад, По-английски

I think it's really useful and interesting question. How much time per day(week) you spend for programming and how much tasks(themes, articles) you solve(learn, read)?

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

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

Автор difask, 10 лет назад, перевод, По-русски

Сегодня я читал статью о декартовом дереве. И у меня возник вопрос. Возможно ли реализовать их через массивы. Если да, как это сделать? Дайте ссылку на реализацию. Лучше на С++, но я пойму на любом языке программированияю Спасибо!

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

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

Автор difask, 10 лет назад, перевод, По-русски

You are given N points (N <= 20). Distance between 2 points is abs(x1-x2)+abs(y1-y2). You should find the shortest way which will visit all points. You can start from any point.

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

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

Автор difask, 10 лет назад, перевод, По-русски

Всем привет! Несколько дней назад я узнал об одной очень крутой фишке в С++. Многие кфщики используют макрос "#define INF 100000007". Вместо этого можно просто писать INFINITY и это будет работать как максимальное число в текущем типе. Например:

  1. ll ans = INFINITY; //long_long_max

  2. if (smth < INFINITY) //int_max by default

  3. if (smth < (long long)INFINITY) //long_long_max

Я не видел это в кодах. Возможно кому-то это будет интересно и он начнет это использовать

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

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

Автор difask, 10 лет назад, По-русски

Я видел, что в С++ можно писать что то типа.

#ifdef something

...

#endif

Где можно настроить это something? Я использую CodeBlocks. Спасибо!

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

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

Автор difask, 10 лет назад, перевод, По-русски

Всем привет! Помогите решить задачу. Есть територия n*m(матрица). Есть размер дома a*b. На некоторых клетках територии ростут деревья, поэтому на них нельзя строить деревья. Нужно посчитать количество способов построить дом. Ссылка

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

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