The longest square subsequence (LSS) problem consists of computing a longest subsequence of a given string S that is a square, i.e., a longest subsequence of form XX appearing in S. It is known that an LSS of a string S of length n can be computed using O(n2) time [Kosowski 2004], or with (model-dependent) polylogarithmic speed-ups using O(n2(loglogn)2/log2n) time [Tiskin 2013]. We present the first algorithm for LSS whose running time depends on other parameters, i.e., we show that an LSS of S can be computed in O(rmin{n,M}logrn+n+Mlogn) time with O(M) space, where r is the length of an LSS of S and M is the number of matching points on S.