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

Автор chokudai, история, 21 месяц назад, По-английски

We will hold AtCoder Beginner Contest 292.

The point values will be 100-200-300-400-500-500-600-600.

We are looking forward to your participation!

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

»
21 месяц назад, # |
Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

lol, bday moment: G is problem you prepared 5 years ago, Ex is $$$O(qlog^2n)$$$ passed in 500 ms,

»
21 месяц назад, # |
  Проголосовать: нравится +8 Проголосовать: не нравится

What is the intended solution for E? I wrote a naive solution and got AC within 1927ms.

  • »
    »
    21 месяц назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    do u use floyed warshal?

    • »
      »
      »
      21 месяц назад, # ^ |
        Проголосовать: нравится +8 Проголосовать: не нравится

      No, I just answered what the problem asks. if there are directed edges from vertex a to vertex b and from vertex b to vertex c, add a -> c to the graph if it does not exist yet.

  • »
    »
    21 месяц назад, # ^ |
      Проголосовать: нравится +3 Проголосовать: не нравится

    Do DFS on each node $$$i$$$ and calculate the sum of the amount of node $$$j(j\neq i)$$$ which can be reached by node $$$i$$$. ​The time complexity is $$$O(n^2)$$$.

    Code
»
21 месяц назад, # |
  Проголосовать: нравится +8 Проголосовать: не нравится

Is G a dp problem ?

Spoiler
  • »
    »
    21 месяц назад, # ^ |
    Rev. 3   Проголосовать: нравится +19 Проголосовать: не нравится

    Let us consider suffixes of $$$S_l, S_{l+1} \ldots S_r$$$ having length $$$m-pos+1$$$.

    Now you can have $$$dp$$$ such that $$$dp[pos][c][l][r]$$$ gives number of ways to put numbers in suffixes such that $$$S_l < S_{l+1} < \ldots < S_r$$$ if we only consider their suffixes of length $$$m-pos+1$$$ with the retsriction that $$$S_l[pos] \geq c$$$.

    So finally the answer is $$$dp[0]['0'][0][n-1]$$$ ($$$0-$$$ basex indexing)

»
21 месяц назад, # |
  Проголосовать: нравится +35 Проголосовать: не нравится

According to my predictor, the difficulty (by Kenkoooo AtCoder Problems) of Ex is below 2400 again, which does not happen before ABC291. ​Finally, ABC is closer to a beginner contest.

»
21 месяц назад, # |
  Проголосовать: нравится +5 Проголосовать: не нравится

geometry :puke:

»
21 месяц назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

F is solvable with a single formula. Let us assume the two sides are $$$l$$$ and $$$w$$$, and $$$l \le w$$$. Then the answer is $$$\min ( \frac{2}{\sqrt{3}} l , \sqrt{l^2 + (2w-\sqrt{3}l)^2})$$$. It would be great practice to prove why this works.

  • »
    »
    21 месяц назад, # ^ |
      Проголосовать: нравится 0 Проголосовать: не нравится

    Wow. If you came up with that at a contest, that's pretty cool.

    • »
      »
      »
      21 месяц назад, # ^ |
        Проголосовать: нравится +8 Проголосовать: не нравится

      Well, tbh the same question turned out to be on math.SE (And I wasn't surprised, fitting one basic shape into another is a very common problem in math). This ain't my fault though, lol

      • »
        »
        »
        »
        21 месяц назад, # ^ |
          Проголосовать: нравится 0 Проголосовать: не нравится

        i found that on SE but did it have the minimum with 2/root3 l i only found the second formula

        • »
          »
          »
          »
          »
          21 месяц назад, # ^ |
            Проголосовать: нравится 0 Проголосовать: не нравится

          You are right, it didn't have the lefthand part in the minimum. But clearly, equilateral triangles with side length longer than $$$\frac{2}{\sqrt{3}}l$$$ can't fit in any such rectangle.

          • »
            »
            »
            »
            »
            »
            21 месяц назад, # ^ |
              Проголосовать: нравится 0 Проголосовать: не нравится

            i see now that does make sense i didnt really think after i found the formula i though it is precision issues thats why my soln aint passing

»
21 месяц назад, # |
  Проголосовать: нравится +4 Проголосовать: не нравится

I think F is a maths problem instead of programming problem.

  • »
    »
    21 месяц назад, # ^ |
      Проголосовать: нравится +14 Проголосовать: не нравится

    I won't disagree that it's a maths problem. But, for those people who don't the maths formula (like me), the problem can be solved with binary search on the answer, so being specific, it's a programming problem for me.

    My submission.

»
21 месяц назад, # |
Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

can someone help me with my Ex solution

the general idea is same as the editorial, find the first position where the prefix sum is 0 or greater. but more bruteforcely i use range-add to mantain the prefix-sum, and do a binary search on tree with range-max.

currently it pass 34 cases and WA on other 20 cases. seems not completely wrong?

wa code

update: solved, forgot to push lazy tags when access the last prefix sum directly. ac code

»
21 месяц назад, # |
Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

For F task Math Exchange

»
21 месяц назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

In problem F, for the case where the equilateral triangle does not share an edge with the rectangle, did anyone else equate $$$\frac{a}{\cos(\theta)}$$$ and $$$\frac{b}{\cos(30^\circ - \theta)}$$$ and use the sum/difference of angles identity to get that $$$\theta = \tan^{-1}(\frac{b-\frac{\sqrt{3}}2 a}{\frac12 a})$$$?

»
21 месяц назад, # |
  Проголосовать: нравится -28 Проголосовать: не нравится

People on codeforces: Oh look this problem had appeared on this chinese website some years ago. MAKE THE CONTEST UNRATED.

People on atcoder: Solution to F(!) is one line easily found by a google search. ....