SUPPER - Supernumbers in a permutation

no tags 

An n-element permutation is an n-element sequence of distinct numbers from the set {1, 2, ...,n}. For example the sequence 2,1,4,5,3 is a 5-element permutation. We are interested in the longest increasing subsequences in a permutation. In this exemplary permutation they are of length 3 and there are exactly 2 such subsequences: 2,4,5 and 1,4,5. We will call a number belonging to any of the longest increasing subsequences a supernumber. In the permutation 2,1,4,5,3 the supernumbers are 1,2,4,5 and 3 is not a supernumber. Your task is to find all supernumbers for a given permutation.


Write a program which

  • reads a permutation from standard input,
  • finds all its supernumbers,
  • writes all found numbers to standard output.


Ten test cases (given one under another, you have to process all!). Each test case consists of two lines. In the first line there is a number n (1<=n<=100000). In the second line: an n-element permutation - n numbers separated by single spaces.


For every test case your program should write two lines. In the first line - the number of supernumbers in the input permutation. In the second line the supernumbers separated by single spaces in increasing order.


2 1 4 5 3
[and 9 test cases more]

1 2 4 5
[and 9 test cases more]

Warning: large Input/Output data, be careful with certain languages

hide comments
black_shroud: 2020-09-18 08:52:45

only BIT is enough

kushagra_2: 2020-07-17 09:38:55

a great problem! must do! LIS + segtree!

pedroslrey: 2020-03-23 00:22:25

Great problem!

zakir068: 2020-02-26 06:11:33


l1356355470: 2018-12-16 07:32:43

Oh´╝îWrong Answer

ndrewxie: 2018-05-24 15:37:40

@Saptarshi, optimize your code :)

mudra03: 2017-11-07 06:27:14

for 5 4 3 2 1 all of them would be supernumbers! right?

poorya: 2017-07-09 11:43:34

how to get input???
do we have to get 10 test cases or we can get less than 10 test case?????

kejriwal: 2015-12-30 17:28:29

Awesome Problem :)

Ankit Sultana: 2015-06-19 22:31:27

Damn. This has to be my best guess ever. Proving the algorithm's correctness was really nice !

Added by:Adam Dzedzej
Time limit:2.25s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Resource:Internet Contest Pogromcy Algorytmow (Algorithm Tamers)
Round IV, 2003