在座標軸上給定兩點 分別為a(0, 0), b(x, y),定義乙個函式d(a, b) = |xa - xb| + |ya - yb|
問是否能找到一點 c 使得
d(a, c) = d(a, b) / 2
d(b, c) = d(a, b) / 2
其中 xc, yc >= 0
ac**
#include #includeusing namespace std;
int main()
}else if(y == 0)
}elseelse}}
printf("-1 -1\n");
con: continue;}}
}}
給定你n, a, b
, 要你構造乙個長度為n(n為偶數)的乙個陣列,陣列中的元素由 1 ~ n 組成,無重複數字。要求:在左半區間a最小,右半區間b最大
,若能則輸出其中任意乙個,若不能構造這樣的區間則輸出-1
ac**
#include #include#include using namespace std;
int arr[110];
bool vis[110];
int main()
arr[1] = l, arr[n] = r;
vis[l] = vis[r] = true;
int idx = n;
for(int i = 1 ; i <= n; i++)
}for(int i = 1; i <= n; i++)
printf("%d ", arr[i]);
printf("\n");
}}
給定k, x
,k會構成乙個2 * k - 1的圖案,如下
/*
* k = 1
* 排列為 -- >
* *
* k = 2
* 排列為 -- >
* *
* * *
* *
* k = 3
* 排列為 -- >
* *
* * *
* * * *
* * *
* *
*/
你想在乙個聊天室發由k
構造而成的圖案,每次發一行,而 x 則是對* 的數量的限制。
只要你發的 * 的數量超過了 x 就會被禁言,問你發多少行會被禁言,如果都不會被禁言就輸出你最多發了多少行(可自行去原題**檢視樣例資料)
ac**
#include #include #include #define ll long long
using namespace std;
int main()else
}if(l > len) printf("%d\n", r);
else printf("%d\n", l);
}}
給定a, b, x
你可以將a 或 b
替換成|a - b| (|a - b| != a 或 b)
問:在進行任意次操作後是否有a 或 b 等於 x
的情況, 有則輸出yes
反之輸出no
如 a b c
6 9 3
||\/
6 3 3 此時 b = 3 = x
||
\/ (還可繼續操作)
3 3 3
ac**
#include #include #include #define no printf("no\n")
#define yes printf("yes\n")
#define ll long long
using namespace std;
ll ta, tb, x;
bool find(ll a, ll b)
if(abs(a - b) == a || abs(a - b) == b) return false;
if(a > b)else
if(a == x || b == x || abs(a - b) == x)
if(find(min(a, b), abs(a - b))) return true;
return false;
}int main()
}}
CF 380菜雞題解
a.給你n個車,時間限制內要走到s。路上有加油站免費加油。對於每輛車,你都可以花2公升油走1步花1分鐘,或者花1公升油走1步花2分鐘。問最小花費。一眼二分就秒了。b.乙個人在貼吧炸魚。然後他炸了好幾次也沒炸到。現在告訴你有n條魚,每條魚的長度為m。魚和魚不重合。求一種炸魚的方案,使得第一次炸到魚的時...
記錄 菜雞划水記錄
突發奇想,可以把每天學的東西搞成個問答形式,就像理想國那種對話形式,有點不好說清楚的東西這樣一來就能表達的很生動很清楚了!還可以看著問題回想答案 內容選材上盡量都是基本 常用且重要的知識點。盡量簡潔。打字好麻煩,還是在筆記本上寫字方便。也不知道做這個能做多久 問 概率與統計的區別是什麼?答 看筆記本...
unity菜雞自學記錄2
物理關節 joint example 門的合頁,滑動門的滑軌,膝上型電腦螢幕 機身間的鉸鏈關係,甚至繩子也可以用關節模擬。實質 關節是一種限制一類運動的自由度,允許另一種運動的自由度的東西 就像在2堵牆間夾著只能順著牆走,至於沿著往哪邊走甚至往上爬都是不受限制的 關節的種類 a.鉸鏈關節 hingl...