< Back to forum

question link: https://arc103.contest.atcoder.jp/tasks/arc103_c

i got the logic. i.e. S(i)=S(n-i) and S(1)=1 and S(n)=0

But how do i make the tree and print the edges..?? i am having problem in this part only

Help!! 

Asked by: Samrat_De on April 7, 2019, 6:34 p.m. Last updated on April 7, 2019, 6:34 p.m.


Enter your answer details below:


Enter your comment details below:




1 Answer(s)

avatar

After checking all the conditions that the tree exists or not.
If the tree exists, follow these steps:

1. initialize a variable say end=0.

2. first print an edge (1,2)

3. initialize a loop from i=1 to i<n-1 and do this in each step

     -> print edge (end+1, i+2)

     -> if current s[i] is equal to 1 then increment end by 1.

Hope this will help.

Narendra_Yadav last updated on April 7, 2019, 6:34 p.m. 0    Reply    Upvote   

Instruction to write good question
  1. 1. Write a title that summarizes the specific problem
  2. 2. Pretend you're talking to a busy colleague
  3. 3. Spelling, grammar and punctuation are important!

Bad: C# Math Confusion
Good: Why does using float instead of int give me different results when all of my inputs are integers?
Bad: [php] session doubt
Good: How can I redirect users to different pages based on session data in PHP?
Bad: android if else problems
Good: Why does str == "value" evaluate to false when str is set to "value"?

Refer to Stack Overflow guide on asking a good question.