codefights 문제인데 단계별로 풀고 있는데 대략적으로 번역기 돌려가며 계속 풀었는데 이번엔 문제 이해가 안된다...
답을 바라는게 아니고 문제 이해만 좀 시켜줘라... 문제는 내가 풀테니
구글 : 같은 길이의 문자열 배열이 주어지면, 재배치 후에 연속적인 위치에있는 문자열이 정확히 한 문자 씩 달라지는 방식으로 문자열을 재 배열 할 수 있는지 확인하십시오.
네이버 : 일련의 문자열을 연속적으로 배열할 경우 문자열을 연속적으로 배치할 수 있도록 문자열을 재정렬할 수 있도록 문자열을 재정렬할 수 있는지 여부를 확인하십시오.
Given an array of equal-length strings, check if it is possible to rearrange the strings in such a way that after the rearrangement the strings at consecutive positions would differ by exactly one character.
Example
For inputArray = ["aba", "bbb", "bab"], the output should be
stringsRearrangement(inputArray) = false;
All rearrangements don't satisfy the description condition.
For inputArray = ["ab", "bb", "aa"], the output should be
stringsRearrangement(inputArray) = true.
Strings can be rearranged in the following way: "aa", "ab", "bb".
Input/Output
[time limit] 500ms (cpp)
[input] array.string inputArray
A non-empty array of strings of lowercase letters.
Guaranteed constraints:
2 ≤ inputArray.length ≤ 10,
1 ≤ inputArray[i].length ≤ 15.
[output] boolean
테스트 케이스가 있어야 뭔 문제인지 파악할 수 있을 것 같아서 테스트 케이스도 첨부함
inputArray: ["aba", "bbb", "bab"] Expected Output: false
inputArray: ["ab", "bb", "aa"] Expected Output: true
inputArray: ["abc", "bef", "bcc", "bec", "bbc", "bdc"] Expected Output: true
inputArray: ["zzzzab", "zzzzbb", "zzzzaa"] Expected Output: true
inputArray: ["ab", "ad", "ef", "eg"] Expected Output: false
inputArray: ["abc", "abx", "axx", "abc"] Expected Output: false
inputArray: ["abc", "abx", "axx", "abx", "abc"] Expected Output: true
이해감 - dc App
동일길이 문자열들이 담긴 배열이 주어졌어요 - dc App
ㄴ왜 해주다가 말어?
배열 내에서 문자열들의 위치를 재배치 시켜서 각 문자열들의 전후 상태를 봤을 때 정확히 한 문자만 변경 시킬 수 있는지 판단하는 함수를 만들어 보라는 취지 - dc App
ab -> aa면 b만 a로 바뀐거고 aa -> bb면 a만 b로 바뀐거라 - dc App
한글인데도 이해를 못하겠네.. 고마워 곱씹어봐야겠다
저 예시를 보니 정확히 이해가 되네 - dc App
아니다 자세한건 더 분석해봐야겠음... - dc App
연속적 위치를 바꾼다는게 막 바꾸지 말고 환형 리스트를 쫙 밀어 버리듯이라는 의미 같기도 한데..처음 트루 나온 예시를 보면. - dc App
문제 링크를 주면 좋겠는데 거기에도 사람들이 질문한게 있거든.. 다른 웹브라우저로 링크따니깐 로그인해야하고 문제 선택이 안되더라고
abc (bac)bef (bbc) bcc (bcc) bec (bdc) bbc (bec) bdc (bef <- f=>c)
ab (ab)ef (ac e=>a f=>c) ad (ad) eg (ae g =>a)
대략 이런 느낌인가?
Q : 한 문자열의 리스트가 주어지면, 리스트안의 가장 왼쪽 문자열부터 시작해서 그 문자열의 바로 오른쪽 문자열과 차이가 문자 '1개'만 나도록, 리스트 안의 문자열들을 '재정렬' 할 수 있는가? 즉, a 가 리스트라면 a[i]와 a[i+1]의 차이가 문자 1개가 되도록 a안의 원소들을 재정렬 할 수 있는지 묻는듯.
흠.. 그럼 a=1이라고 치면 aa =2 ab =3 bb =4 이런 소린가?
잘 생각해 보니 그래프 순회 문제인 것 같애
마지막 케이스 보면 a[i]와 a[i+1]의 차이가 문자 1개가 날 수가 없는데... 같은게 2개씩 포함되어 있어서..
마지막꺼 순서대로 보면 하나씩 차이나는디
ㄴ 자려고 누웠는더 쪼금더 설명해줄수 있나?
아 슈발 이해했다 감사하다 형들