Skip to content

Commit 69dd288

Browse files
committed
Time: 14 ms (82.94%), Space: 45.9 MB (23.44%) - LeetHub
1 parent 4714c2b commit 69dd288

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

2337-move-pieces-to-obtain-a-string/2337-move-pieces-to-obtain-a-string.java

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,29 @@
11
class Solution {
2-
public boolean canChange(String start, String target) {
2+
public boolean canChange(String s, String t) {
3+
// TC - O(n)
4+
// SC -(1)
35
int i=0,j=0;
4-
int n= start.length();
6+
int n= s.length();
57
while(i<n || j<n){
6-
while(i<n && start.charAt(i)=='_'){
8+
while(i<n && s.charAt(i)=='_'){
79
i++;
810
}
9-
while(j<n && target.charAt(j)=='_'){
11+
while(j<n && t.charAt(j)=='_'){
1012
j++;
1113
}
1214
//System.out.print("i - "+i+" "+"j -"+j+" , ");
1315

14-
if (i == j && i == start.length()) {
16+
if (i == j && i == n) {
1517
return true;
1618
}
1719

1820
//both are not equal :
19-
if (i == start.length() || j == target.length() || start.charAt(i) != target.charAt(j)) {
21+
if (i == n || j == n || s.charAt(i) != t.charAt(j)) {
2022
return false;
2123
}
2224

2325
//both are equal :
24-
if((target.charAt(j)=='L' && i<j) || (target.charAt(j)=='R' && i>j)){
26+
if((t.charAt(j)=='L' && i<j) || (t.charAt(j)=='R' && i>j)){
2527
return false;
2628
}
2729
i++;

0 commit comments

Comments
 (0)