scanner = new Scanner(System.in); int a=scanner.nextInt(); int b=scanner.nextInt(); System.out.println((a+b)/2); } public static void main(String a[]){ new Main().compute(); } } 問1 Javaによる解答例
b, N; cin >> a >> b >> N; int ans=0; for(int i=0; i<N; i++){ int s, f; cin >> s >> f; if(s < b && a < f) ans=1; } cout << ans << endl; } 問4 C++による解答例(解法1)
ることができない. • 完成グラフの任意の頂点には、入次辺が存在する. – 入次辺のない頂点 v があったとする.上の結果から、 v には必 ず出自辺が存在するが、 v 以外の頂点から出発したときに v に向かう辺がないので、v の出自辺を通れない. • 完成グラフ上で、任意の頂点から任意の頂点へ行くことができる. – 完成グラフ上のある頂点 s から頂点 t へ行けないとする.前述 のように t には出次辺が存在するが、このとき頂点 s からその 辺を通ることは不可能なため、矛盾する. • 逆に、グラフ上で任意の頂点から任意の頂点まで行ける場合、そ のグラフは完成グラフである. – 通っていない辺があるときは、その辺の始点に行ってからその 辺を通ればよい.
s と t に近いもの)を、 最近共通祖先(LCA)と呼ぶ. • 頂点 s と頂点 t のLCAを u とすると、s から t までのコストは、 (u から s までのコスト)+(u から t までのコスト) =((根から s)- (根から u))+((根から t ) - (根から u)) =(根から s)+(根からt) - 2*(根から u) で求められる. • 根から任意の頂点までのコストを高速に求めたい. 問11 ネットワークの課金システム s t 共通の親 ←LCA 根 u s t 根から u のコスト s から u のコスト t から u のコスト