コンパイル時には無理だな
Aのコンストラクタで
if (this.GetType().GetConstructor(new Type[0]) == null) throw new Exception();
とかするくらいかな
「デフォルトコンストラクタを実装すること」くらいは継承する人に責任持たせていいと思うよ