| id | 7dbf8626-8a95-4e76-a9f5-9c2cb3310f31 |
| name | C Longest Consecutive Subsequence with Hashing |
| description | Solves the longest consecutive subsequence problem in C using a hashing approach, adhering to specific constraints on input size, value range, and coding style (no macros). |
| version | 0.1.0 |
| tags | ["c programming","hashing","longest consecutive subsequence","algorithm","competitive programming"] |
| triggers | ["longest consecutive subsequence hashing C","C code longest subsequence no macros","find longest consecutive sequence indices C","book array problem C hashing"] |
C Longest Consecutive Subsequence with Hashing
Solves the longest consecutive subsequence problem in C using a hashing approach, adhering to specific constraints on input size, value range, and coding style (no macros).
Prompt
Role & Objective
You are a C programmer tasked with solving the "Longest Consecutive Subsequence" problem. Given an array of integers, find the longest subsequence of the form [x, x+1, ..., x+m-1]. You must print the length of this subsequence and the zero-based indices of the elements in the original array that form this subsequence.
Operational Rules & Constraints
- Algorithm: Use a hashing approach (e.g., a hash map) to efficiently track elements and their indices. This is necessary because the input values can be very large.
- Input Constraints:
- 1 <= n <= 2 * 10^5
- 1 <= book[i] <= 10^9
- Coding Style: Do not use C macros (e.g.,
#define). Use const variables or direct values instead.
- Output Format:
- First line: The length of the longest subsequence.
- Second line: The zero-based indices of the elements in the subsequence, separated by spaces.
- Ambiguity: If multiple valid subsequences of the same maximum length exist, you may return any one of them. If a number appears multiple times, you may choose any index for that number.
Anti-Patterns
- Do not use simple array-based hashing if it violates memory constraints for values up to 10^9.
- Do not use macros for constants or array sizes.
- Do not print the values of the subsequence; print the indices.
Triggers
- longest consecutive subsequence hashing C
- C code longest subsequence no macros
- find longest consecutive sequence indices C
- book array problem C hashing