음수가 아닌 두 정수 num1과 num2가 문자열 형식으로 주어지면 그 합을 계산하세요. 이때 우리는 무엇을 해야 합니까? 오늘은 편집자가 안내해드릴 예정이며, 필요하시면 참고하실 수 있습니다.
음수가 아닌 두 정수 num1과 num2가 문자열 형식으로 주어지면 그 합을 계산하세요.
팁:
num1과 num2의 길이는 모두 5100보다 작습니다. num1과 num2 모두 숫자 0-9만 포함합니다. num1과 num2에는 앞에 0이 포함되어 있지 않습니다.
내장된 BigInteger 라이브러리를 사용할 수 없습니다. 입력 문자열을 정수형으로 직접 변환할 수 있나요
문제 해결 아이디어
비트씩 추가하면 나머지는 누적되어 최종 판단은 0이 됩니다. 더 이상 루핑은 없습니다
Code
class Solution { /** * @param String $num1 * @param String $num2 * @return String */ function addStrings($num1, $num2) { $cur = 0; $i = strlen($num1) - 1; $j = strlen($num2) - 1; $str = ''; $carry = 0; while ($i >= 0 || $j >= 0 || $carry) { $cur = $carry; if ($i >= 0) { $cur += $num1[$i--]; } if ($j >= 0) { $cur += $num2[$j--]; } $carry = floor($cur / 10); // 向下取整,最后一次 0 的情况就不再循环 $str = $cur % 10 . $str; // 累连求余之后的结果, .$str 的操作可以避免反转结果 } return $str; }}
추천 학습: php 비디오 튜토리얼
위 내용은 PHP에서 문자열을 추가하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!