Try this.
WITH TEMP_CTE AS(
SELECT PAT_ONE.PatientID, PAT_ONE.AdmissionDate, PAT_ONE.DischargeDate, PAT_ONE.Cost
FROM PatientProblem PAT_ONE
LEFT OUTER JOIN PatientProblem PAT_TWO ON PAT_ONE.PatientId = PAT_TWO.PatientID AND PAT_ONE.DischargeDate = DATEADD(day, -1, PAT_TWO.AdmissionDate)
WHERE
PAT_TWO.PatientID IS NULL
UNION ALL
SELECT PAT_TWO.PatientId, PAT_TWO.AdmissionDate, TEMP_CTE.DischargeDate, PAT_TWO.Cost + TEMP_CTE.Cost
FROM PatientProblem PAT_TWO, TEMP_CTE
WHERE
PAT_TWO.PatientId = TEMP_CTE.PatientId AND TEMP_CTE.AdmissionDate = DATEADD(day, 1, PAT_TWO.DischargeDate)
),
CTE_TWO AS
(SELECT *, ROW_NUMBER() OVER(PARTITION BY PatientId, DischargeDate ORDER BY AdmissionDate ASC) ROW_NUM FROM TEMP_CTE)
SELECT * FROM CTE_TWO
WHERE ROW_NUM = 1