나는 여러 번 시도해도 이상한 질문에 직면하고 있습니다. 문제의 논리와 적절한 코드를 찾을 수 없습니다.파일의 항목을 동적으로 계산하는 어려운 방법
나는 아래의 형식으로 파일이 있습니다
aa:bb:cc dd:ee:ff 100 ---------->line1
aa:bb:cc dd:ee:ff 101 ---------->line2
dd:ee:ff aa:bb:cc 230 ---------->line3
dd:ee:ff aa:bb:cc 231 ---------->line4
dd:ee:ff aa:bb:cc 232 ---------->line5
aa:bb:cc dd:ee:ff 102 ---------->line6
aa:bb:cc dd:ee:ff 103 ---------->line7
aa:bb:cc dd:ee:ff 108 ---------->line8
dd:ee:ff aa:bb:cc 233 ---------->line9
gg:hh:ii jj:kk:ll 450 ---------->line10
jj:kk:ll gg:hh:ii 600 ---------->line11
내 프로그램 라인으로 파일 라인을 읽어야합니다. 첫 번째 줄과 두 번째 줄에서 해당 column1과 column2 값은 같습니다. 세 번째 열은 두 행에서 동일하지 않은 시퀀스 번호입니다.
line1과 line2는 같기 때문에 순서 번호는 1의 값만 다르므로 먼저 두 줄을 읽고 출력 파일에 개수를 2로 써야합니다. 우리가 관찰하면, 6 행과 7 행은 일련 번호가 연속 된 1 행과 2 행과 동일하지만 행 1과 2가 서로 다른 행 번호 line3, line4, line5가 그 사이에옵니다. 따라서 라인 (1 & 2)과 라인 (6 & 7)은 함께 그룹화되어서는 안됩니다. 그래서 출력 파일에서 나는 2 3 2 1 1 1 1과 같은 결과를 얻어야한다. 그리고 한 가지 더, 라인 7과 8은 시퀀스 번호가 1보다 다르다. 따라서 라인 8은 별도의 엔트리로 계산되어야한다. 6,7,8 행은 처음 두 행이 같지만 6, 7 행과 함께 사용하지 마십시오.
대부분의 사람들이이 질문을 이해하기를 바랍니다. 그렇지 않다면 나는 그 질문에 대해 무엇이든 명확히 할 것이다.
이것은 매우 복잡한 문제입니다. 내가 아는 유일한 데이터 구조로 사전을 사용하여 시도했지만 논리가 작동하지 않습니다. 이 문제를 해결하도록 도와주세요.
어디에도 질문이 표시되지 않습니다. – Stephan
@Stephan 질문은 내가 언급 한 것처럼 출력 파일을 어떻게 생성합니까? –
@ JustinCarrey 질문을 다시 한 번 더 노골적인 말로 바꾸십시오. – 2rs2ts