トピックや人々のがん!!!
T2のタイトルと試料表面は同じではありませんので、私は(はいそれは私がアナログ書き込みがハングアップ書く理由です)ハングアップ
T1の洪水を説明するのが面倒な問題、5分AC
1つの#include <ビット/ STDC ++ H> 2 の#defineは長い長いっ 3が 使用 名前空間STDを、 4 LL N。 5 INT メイン() 6 { 7 CIN >> N。 8 場合(N < 4 ) 9 { 10 COUT << " NO " << ENDL。 11 リターン 0 ; 12 } 13 であれば(N%2 == 0 ) 14 { 15 裁判所未満<< " NO " << てendl; 16 リターン 0 ; 17 } 18 N-- 。 19 COUT << " 1 " << " " <<(N- 2)/ 2 << ENDL。 20 }
T2シミュレーション
1の#include <iostreamの> 2の#include <cstdioを> 3 使用して 名前空間STDを、 4 INT N、K、M、T、LA、LB。 5 INT メイン() 6 { 7 のscanf(" %D%D%D%D "、&N&K、&M&T)。 8 用(登録をint i = 1 iが++; I <= T ) 9 { 10 のscanf(" %d個の%のD "、&LA、&LB); 11 であれば(LA == 1 ) 12 { 13 であれば(N < M) 14 { 15 N ++ 。 16 もし(K> = LB) 17 { 18 K ++ 。 19 } 20 } 21 } 22が あれば(LA == 0 ) 23 { 24 であれば(K <= LB) 25 { 26 N = ポンド。 27 } 28 、他 29 { 30 K- = ポンド。 31 N- = ポンド。 32 } 33 } 34 のprintf(" %D%D \ N " 、N、K)。 35 } 36 }
私は正の解のT3であると思いますが、戦いをハングアップし、実際には、行数と暴力との交点は、すべての2本の平行線にそれらを列挙し、始点と終点を覚えて、その上に判決の長さ、及び、直接式を設定し、その結果
1つの#include <ビット/ STDC ++ H> 2 使用して 名前空間STDを、 3 の#defineっ長い長い 4 INT N、SN、HN。 5 LLのA、B、C、D、ANS、NUM。 6 構造体シュウ{LLのX、Y1、Y2;} S [ 1050 ]。 7 構造体ヘン{LLのY、X1、X2;}時間[ 1050 ]。 8 int型XL、XR、SL、SR、湯、ヤード。 9 INT メイン() 10 { 11 CIN >> N。 12 のために(int型 i = 1 ; iが<= N iが++ ){ 13 scanf関数(" %LLD%LLD%LLD%LLD "、&、&B、&C&D)。 14 であれば(A == C){ 15 であれば(B> D)スワップ(B、D)。 16 SN ++ ; 17の S [SN] .X = A。 18の S [SN] .y1 = B。 19の S [SN] .y2 = D。 20 続け; 21 } 22 であれば(> C)スワップ(C); 23 HN ++ ; 24 時間[HN] .Y = B。 25 H [HN] .x1 = A。 26 H [HN] .x2 = C。 27 } 28 のための(int型 I = 1 ; I <= HN; iが++ ){ 29 のための(int型 J = I + 1、J <= HN; J ++ ){ 30 XL = MAX(H [I] .x1、H [J ] .x1)。 31 XR = 分(H [I] .x2、H [J] .x2)。 32 であれば(XL> = XR)続けます。 33 NUM = 0 。 34 湯= 分(H [I] .Y、H [J] .Y)。 35 YD = MAX(H [I] .Y、H [J] .Y)。 36 用(int型のk = 1 ; K <= SNあり、k ++ ){ 37 であれば(S [k]は.X> = XL && S [k]は.X <= XR && S [k]は.y1 <=優&& S [k]は.y2> =ヤード)NUM ++ ; 38 } 39の ANS + = NUM×(num- 1)/ 2 。 40 } 41 } 42 のprintf(" %のLLD " 、ANS)。 43 44 }