처음에 오프라인 쿼리인 줄 알고 구현 ㅈㄴ 하다가 안해도 상관 없다는 걸 깨달아서 AC받음.. E번은 존나 대충 구현해도 2.2초 나오는 거 보니까 슬라이딩 윈도우로 빡구현 해도 시간제한 되는 거 같던데. 못풀줄 알고 천천히 한 게 후회되네
댓글 5
걍 빠르게 레이지세그 박고 넘겼는데 생각도못한풀이네
익명(175.115)2022-11-19 23:03
답글
사실 그거 필요없이 쿼리에 1이 나타나기 전까지는 입력된 배열을 이용하다가평 1이 나타나는 순간 컷하고 2일 때는 map을 이용해서 인덱스에 합을 저장해주고 3 map[출력인덱스]+ 초기화된 값
출력하고 1 또 나타나면 또 초기화 하는 식으로 짰는데 ㅈㄴ 구현 지랄나긴함.
익명(223.62)2022-11-19 23:09
답글
레이지 세그로 풀 수 있는건 몰랐는데 이번 기회에 세그트리 제대로 파봐야겠음. 알려줘서 ㄱㅅ
익명(223.62)2022-11-19 23:10
답글
결국 전체구간을 k로 초기화해야되는데.. 이걸 줄이는게 관건이라 바로 레인지쿼리 떠올려서 박긴했는데 오버킬이긴 하지..
익명(175.115)2022-11-19 23:19
그냥 각 원소별로 마지막으로 받은 2번 쿼리가 몇 번째인지 저장하고, 별도로 마지막 1번 쿼리가 몇 번째인지 따로 저장해서 푸는게 가장 무난한듯
걍 빠르게 레이지세그 박고 넘겼는데 생각도못한풀이네
사실 그거 필요없이 쿼리에 1이 나타나기 전까지는 입력된 배열을 이용하다가평 1이 나타나는 순간 컷하고 2일 때는 map을 이용해서 인덱스에 합을 저장해주고 3 map[출력인덱스]+ 초기화된 값 출력하고 1 또 나타나면 또 초기화 하는 식으로 짰는데 ㅈㄴ 구현 지랄나긴함.
레이지 세그로 풀 수 있는건 몰랐는데 이번 기회에 세그트리 제대로 파봐야겠음. 알려줘서 ㄱㅅ
결국 전체구간을 k로 초기화해야되는데.. 이걸 줄이는게 관건이라 바로 레인지쿼리 떠올려서 박긴했는데 오버킬이긴 하지..
그냥 각 원소별로 마지막으로 받은 2번 쿼리가 몇 번째인지 저장하고, 별도로 마지막 1번 쿼리가 몇 번째인지 따로 저장해서 푸는게 가장 무난한듯