>백엔드 개발 >C++ >특정 시간 이후 분침과 시침이 일치하는 시간

특정 시간 이후 분침과 시침이 일치하는 시간

WBOY
WBOY앞으로
2023-09-12 09:29:07676검색

분침이 한 시간에 12시에서 12시로 이동하면 시침도 이전 시간에서 다음 시간으로 이동합니다.

그래서 매시 분침과 시침이 일치합니다.

문제 설명

입력된 시간이 주어지면 다음 시간에서 시침과 분침이 일치하는 시간(분 단위)을 구합니다.

입력 - 시간 = 4

출력 - 우연의 일치 시간: 240/11분.

이 방법에 대한 설명은 더 자세히 논의하겠습니다.

입력 - 시간 = 5

출력 - 우연의 일치 시간: 300/11분.

설명 및 방법

특정 시간 이후 분침과 시침이 일치하는 시간

분침이 한 시간에 한 바퀴를 돌면 시침도 한 시간에서 다음 시간으로 이동합니다. 그럼 수학적으로 -;

분침은 60분 동안 움직이고, 시침은 5분 동안 움직입니다.

또는-

분침이 60걸음이면 시침은 5걸음이 됩니다.

그러니까 -

분침 60단계 == 시침 5단계

그러니까 -

분침 1단 = 시침 1/12단

이제 시침과 분침이 일치하는 데 m분이 걸린다고 가정해 보겠습니다.

입력시간이 h라면 -

그런 다음 분침은 h*5분에 해당 시간 이후 시침이 경과한 분 수를 더해 움직여야 합니다.

따라서 m = h*5 + m/12입니다. (m/12 = 시침이 시간을 입력하기 시작한 이후의 분 수).

LCM을 가져가세요 -

미터 = (높이*5*12 + 미터)/12

12m = 60*h + 미터

12미터 - 미터 = 60*높이

11m = 60*시간

따라서 m = 60*h/11

이제 위의 예를 고려하여 공식을 검증해 보겠습니다.

  • 입력 시간 = 4

  • 시침과 분침이 일치하는 시간(분)은 다음과 같습니다.

    분 = 60*시간/11

    따라서 m = 60*4/11

    분 = 240/11분.

  • 마찬가지로 입력 시간 = 5,

  • 미터=60*5/11

    300/11분입니다.

위 공식을 사용하여 솔루션을 작성할 수 있습니다.

의사코드

주요 기능:

  • 입력시간을 초기화하세요.

  • cociding_time(시간) 함수를 호출합니다.

coinciding_time(정수 시간):

  • 시간 -> 60*시간/11

  • 시간을 인쇄하세요.

아래는 주어진 시간 이후 분침과 시침이 일치하는 시간을 찾는 C++ 프로그램입니다.

으아아아

출력

으아아아

분석

시간 복잡도 - O(1) [상수]

공간 복잡성 - O(1) [상수]

결론

이 기사에서는 시침과 분침이 일치하는 시점을 알아봅니다. 우리는 단일 방법을 사용하여 이 공식을 도출하고 몇 가지 예를 통해 이를 이해합니다. 그런 다음 이 공식을 사용하여 의사 코드를 작성하고 C++로 솔루션을 작성했습니다.

위 내용은 특정 시간 이후 분침과 시침이 일치하는 시간의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제