- 締切済み
期間の計算
SQLされたある開始日、終了日がn個あり、それらのトータルの期間の合計を求めます。単純に一つ一つの期間を出して全部足すのではなく、重なっている部分を取り除きたいのですが解法が見出せません。よろしくお願いします。西暦、月はそれぞれint形に変換しております。 例 n 開始日 終了日 1 2000/1 2005/2 2 2003/2 2004/8 3 2004/8 2005/5 4 2005/10 2005/12 1の期間は5年1ケ月、2の期間は1年6ヵ月 3の期間は9ヶ月です。4の期間は2ヶ月重なっている期間や空白の期間を省くトータルの期間は5年6ヵ月となります。この5年6ヵ月を求めるアルゴリズムが思いつきません。よろしくお願いします。なおのnはwhile(rs.next()){ } でループしています。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- takaP-
- ベストアンサー率79% (83/105)
回答No.1
お礼
takaさん回答ありがとうございます。二重配列を利用すると考えやすくなりますね。takaさんの回答をお手本に自分でも考えて見ます。ありがとうございました!