Problem Statement
You are given a
Perform the specified exchange operation times times on the given sequence and return a
Definition
- Class:
- CardsShuffle
- Method:
- shuffle
- Parameters:
- String, int, int, int
- Returns:
- String
- Method signature:
- String shuffle(String cards, int first, int last, int times)
- (be sure your method is public)
Constraints
- cards will contain between 1 and 50 characters, inclusive.
- cards will contain only uppercase letters ('A'-'Z').
- first will be between 1 and n, inclusive, where n is the number of characters in cards.
- last will be between first and n, inclusive, where n is the number of characters in cards.
- times will be between 1 and 100, inclusive.
Examples
"NW"
2
2
9
Returns: "WN"
It always moves the second card to the front.
"BMQ"
1
2
2
Returns: "BMQ"
This operation does not change anything.
"DARZ"
1
3
5
Returns: "DARZ"
"KYHID"
3
5
8
Returns: "YHIDK"
"CDXRJM"
1
1
36
Returns: "CDXRJM"
"RXSJYBL"
1
6
60
Returns: "RXSJYBL"
"FSARCBYN"
5
5
74
Returns: "SARCFBYN"
"YGGXXPKLO"
8
9
63
Returns: "YGGXXPKLO"
cards may contain duplicate characters.
"KMCOQHNWNKU"
9
10
9
Returns: "COQHNWNKKMU"
"WMDKQTBXIXMVT"
5
5
79
Returns: "MDKQWTBXIXMVT"
"LJPTNSNFWZQFJM"
1
4
11
Returns: "LJPTNSNFWZQFJM"
"DRRWSOFSBCNUVQH"
2
6
23
Returns: "ODRRWSFSBCNUVQH"
"SAQXWPQCACEHCHZV"
4
14
76
Returns: "WPQCACEHCHSAQXZV"
"MLNOZJKPQPXRJXKIT"
3
15
78
Returns: "KPQPXRJXKMLNOZJIT"
"ACBHHKICQCOENDTOMF"
7
12
48
Returns: "ACBHHKICQCOENDTOMF"
"DWFCGPXIQVKUYTDLCGD"
3
4
34
Returns: "DWFCGPXIQVKUYTDLCGD"
"TACIOHORDTQKVWCSGSPQ"
3
17
18
Returns: "CIOHORDTQKVWCSGTASPQ"
"SBOAGUWNNYQXNZLGDGWPB"
6
6
50
Returns: "GUSBOAWNNYQXNZLGDGWPB"
"BLNSADEUGUUMOQCDRUBETO"
7
13
38
Returns: "UGUUMOBLNSADEQCDRUBETO"
"HOACHWDVMXXRDRYXLMNDQTU"
18
23
32
Returns: "XLMNDQTUHOACHWDVMXXRDRY"
"GMLEJUUKWCIBXUBUMENMEYAT"
4
22
37
Returns: "MLEJUUKWCIBXUBUMENMEYGAT"
"YDIAJXLOGHIQFMZHLVIHJOUVS"
3
3
11
Returns: "DIYAJXLOGHIQFMZHLVIHJOUVS"
"YPAYULYEIMUOTEHZRIICFSKPGG"
2
11
76
Returns: "UYPAYULYEIMOTEHZRIICFSKPGG"
"IPZZRZUCXAMLUDFYKGRUOWZGIOO"
1
9
65
Returns: "IPZZRZUCXAMLUDFYKGRUOWZGIOO"
"PLEQLWPHAPJNADQHDCNVWDTXJBMY"
18
20
12
Returns: "LWPHAPJNADQHDCNVPLEQWDTXJBMY"
"HAUXNSPUSGDHIIXQMBFJXJCVUDJSU"
9
28
71
Returns: "SGDHIIXQMBFJXJCVUDJSHAUXNSPUU"
"YEBMWSIQYOYGYXYMZEVYPZVJEGEBEO"
10
13
24
Returns: "YOYGYYEBMWSIQXYMZEVYPZVJEGEBEO"
"FTSXDIXTIGSIEEHKCHZDFLILRJQFNXZ"
18
22
93
Returns: "DFLFTSXDIXTIGSIEEHKCHZILRJQFNXZ"
"SVBSPKYHSENBPPKQTPDDBUOTBBQCWIVR"
2
12
27
Returns: "SPKYHSENBSVBPPKQTPDDBUOTBBQCWIVR"
"UJJDDNTGEIQVDGAIJVWCYAUBWEWPJVYGE"
1
27
60
Returns: "UJJDDNTGEIQVDGAIJVWCYAUBWEWPJVYGE"
"XEPBPIWUQZDZUBDUBZVAFSPQPQWUZIFWOV"
17
18
90
Returns: "XEPBPIWUQZDZUBDUBZVAFSPQPQWUZIFWOV"
"WYVVBURCZMGYJGFDXVTNUNNESLSPLWUIUPF"
4
11
56
Returns: "VBURCZMGWYVYJGFDXVTNUNNESLSPLWUIUPF"
"BKNHKWPPANLTCFIRJCDDSOZOYVEGURFWCSFM"
4
29
77
Returns: "UBKNHKWPPANLTCFIRJCDDSOZOYVEGRFWCSFM"
"QMRJOWRGHWLKOBMEAHKGCCNAEHHSVEYMQPXHL"
18
35
59
Returns: "AEHHSVEYMQPXQMRJOWRGHWLKOBMEAHKGCCNHL"
"NYFDZRHBASJEUYGAFOUBUTPNIMUWFJQSJXVKQD"
30
31
18
Returns: "UWFJQNYFDZRHBASJEUYGAFOUBUTPNIMSJXVKQD"
"XVRWCTDSNEOGVBPKXLPGDIRBFCRIQIFPGYNKRRE"
11
19
29
Returns: "TDSNEOGVBPKXLPXVRWCGDIRBFCRIQIFPGYNKRRE"
"NVUCFTPWCTGTWMXNUPYCFGCUQUNUBLMOIITNCKLE"
9
36
77
Returns: "FTPWCTGTWMXNUPYCFGCUQUNUBLMOIITNNVUCCKLE"