6

パナソニックグループプログラミングコンテスト2023(AtCoder Beginner Contest 301)...

 1 year ago
source link: https://codeforces.com/blog/entry/116437
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

We will hold パナソニックグループプログラミングコンテスト2023(AtCoder Beginner Contest 301).

The point values will be 100-200-300-400-475-500-600-625. (Since this ABC, we adjust the point values depending on problems.) We are looking forward to your participation!

3 days ago, # |

Finally Atcoder is adjusting point values depending on their difficulties:P

  • 3 days ago, # ^ |

    Moral of this contest: Never use alts to try to consume all the penalties for your main account. (even with unrated register) If so, both accounts will be deleted automatically.

3 days ago, # |

Rev. 2  

+11

Perfect, 502 Bad Gateway and 504 Gateway Time-out was all we needed!!

3 days ago, # |

DDOS again :(

3 days ago, # |

Anti-DDoS is very hard to break!

3 days ago, # |

Imagine Naming a problem Anti-DDoS and the server suffers from DDoS problem

3 days ago, # |

How to solve D?

  • 3 days ago, # ^ |

    Digit DP

    • 3 days ago, # ^ |

      it's not digit DP

      • 3 days ago, # ^ |

        Can you point out the mistake in this approach? We first replace all '?' with '0' and store indices of all '?' in a vector. Then we iterate on every element x of the vector and check if setting xth bit to 1 would give a number smaller than or equal to N. If you get a valid number, change '0' to '1' at that index.

        Code
        • 3 days ago, # ^ |

          Never mind, I got it. It should be 1LL << i instead of 1 << i.

          Got WA x 2 due to this small mistake. :(

      • 3 days ago, # ^ |

        I didn't know that there exists an easier solution, I just said how I solved it.

    • 3 days ago, # ^ |

      Rev. 2  

      +29

      You guys did DP?

      I did it by greedy
      • 3 days ago, # ^ |

        There is no username that goes by "perfect".

  • 3 days ago, # ^ |

    Implementation :( I unwanted memoized it with dp my submission.

    DDOS didn't get chill with me.. when I play good round gets unrated and when bad gets rated :(

  • 3 days ago, # ^ |

    Rev. 3  

    +1

    Solution of D
  • 3 days ago, # ^ |

    Rev. 5  

    0

    I've solved it with a greedy technique.

    My Algorithm is:

    1- Compute the current value of string S in decimal representation and neglect all '?' symbols in it

    2- Iterate over string S from MSB (most significant bit) and check if the current symbol is '?' and the (value of current value of S + pow (2, size(s)-idx-1)) is less than or equal to N, then I'll flip this symbol to 1 and add pow (2, size(s)-idx-1) to current value of s, else I will flip it to 0.

    My Source code

  • 3 days ago, # ^ |

    I tried solving it using DP. Here is my solution (in case, you are interested).

3 days ago, # |

Can I somehow download the test case? problem E, last test.

  • 3 days ago, # ^ |

    I also was getting WA on that test case. I had a typo in my solution. While checking the distance from the starting point to the goal, I was doing instead of

  • 2 days ago, # ^ |

    I faced the same problem,

    I thought he had to stop once he reached the Goal square (meaning he can't visit the goal square multiple times). This was giving WA.

    Maybe the wording of the question could have been better :(

    • 2 days ago, # ^ |

      I thought exactly the same lol, could not figure out what the mistake was for 1 hour.. Thanks!

    • 43 hours ago, # ^ |

      Explanation for sample 1 shows that you can move through the goal square

  • 3 days ago, # ^ |

    Rev. 2  

    0

    Counter:

    Input:  
    ttttac
    @@@tac
    Output:
    No
    Correct Output:
    Yes

    You should reduce firstone[i] by 1 when firstone[i] > secondone[i] similar for secondone[i].

3 days ago, # |

I found D much harder to solve than E. 😿

3 days ago, # |

My solution to problem E is as follows.

  1. use bfs(two times) to find the minimum distance from S to any cell, and from G to any cell;
  2. use bfs again, to find the distance between any two cells with candies;
  3. use dp[st][last], where st is the state of bitmask whose 1s denote that these candies have been taken, and last denotes the last candy that we take, and this dp could be computed with the help of a queue.
  4. from each dp[st][last], we compute the total distance to reach G, and if it is <= T, then we could update the maximum number of candies that we can take.

Is this the intended solution or there is some simpler one.

  • 3 days ago, # ^ |

    you just re-invented the traveling salesman problem. Congrats!

  • 2 days ago, # ^ |

    Can't we use recursion on all the candies, because the maximum count is 18. I followed your first and second as it is but my solution got TLE.

3 days ago, # |

didnt get in contest but f was fun, thanks to authors

3 days ago, # |

Something really weird happened to me in problem C today. I got WA and I lost almost the entire contest trying to find what was wrong with my code. Now I managed to get AC by changing only one line in my code:

The only difference is how I iterate the string "atcoder". I guess in my first code there is some kind of undefined behavior. Does anyone know why iterating with for(auto c:"atcoder") is wrong?

  • 3 days ago, # ^ |

    Rev. 3  

    +30

    Please run the following snippet in AtCoder's custom test page:

    Spoiler
  • 2 days ago, # ^ |

    That's because in the first case, "atcoder" is considered as a character array and not as a string.

90 minutes ago, # |

May I ask when the data for abc301 will be available? Thank you.


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK