6.給定三個整數陣列
a = [a1, a2, ... an],
b = [b1, b2, ... bn],
c = [c1, c2, ... cn],
請你統計有多少個三元組(i, j, k) 滿足:
1. 1 <= i, j, k <= n
2. ai < bj < ck
【輸入格式】
第一行包含乙個整數n。
第二行包含n個整數a1, a2, ... an。
第三行包含n個整數b1, b2, ... bn。
第四行包含n個整數c1, c2, ... cn。
對於30%的資料,1 <= n <= 100
對於60%的資料,1 <= n <= 1000
對於100%的資料,1 <= n <= 100000 0 <= ai, bi, ci <= 100000
【輸出格式】
乙個整數表示答案
【樣例輸入】
31 1 1
2 2 2
3 3 3
【樣例輸出】
27 二分
**:
#include#include#include#include#include#include#include#include#include#includeconst int maxn=1e5+5;
typedef long long ll;
using namespace std
ll a[maxn],b[maxn],c[maxn],d[maxn],e[maxn];
int main()
for(int i=1;i<=n;i++)
scanf("%lld",&b[i]);
for(int i=1;i<=n;i++)
scanf("%lld",&c[i]);
sort(d+1,d+1+n);
sort(b+1,b+1+n);
sort(c+1,c+1+n);
ll ans=0;
for(int i=1;i<=n;i++)
for(int i=1;i<=n;i++)
cout<7.
如圖p1.png所示的螺旋折線經過平面上所有整點恰好一次。
對於整點(x, y),我們定義它到原點的距離dis(x, y)是從原點到(x, y)的螺旋折線段的長度。
例如dis(0, 1)=3, dis(-2, -1)=9
給出整點座標(x, y),你能計算出dis(x, y)嗎?
【輸入格式】
x和y
對於40%的資料,-1000 <= x, y <= 1000
對於70%的資料,-100000 <= x, y <= 100000
對於100%的資料, -1000000000 <= x, y <= 1000000000
【輸出格式】
輸出dis(x, y)
【樣例輸入】
0 1【樣例輸出】
3應該算是數學題,看每一圈的終止點,然後根據座標去判斷各種情況
#include#include#include#include#include#include#include#include#include#includeconst int maxn=1e5+5;
typedef long long ll;
using namespace std;
int main()
} else }
cout<8.小明維護著乙個程式設計師論壇。現在他收集了乙份"點讚"日誌,日誌共有n行。其中每一行的格式是:
ts id
表示在ts時刻編號id的帖子收到乙個"贊"。
現在小明想統計有哪些帖子曾經是"熱帖"。如果乙個帖子曾在任意乙個長度為d的時間段內收到不少於k個讚,小明就認為這個帖子曾是"熱帖"。
具體來說,如果存在某個時刻t滿足該帖在[t, t+d)這段時間內(注意是左閉右開區間)收到不少於k個讚,該帖就曾是"熱帖"。
給定日誌,請你幫助小明統計出所有曾是"熱帖"的帖子編號。
【輸入格式】
第一行包含三個整數n、d和k。
以下n行每行一條日誌,包含兩個整數ts和id。
對於50%的資料,1 <= k <= n <= 1000
對於100%的資料,1 <= k <= n <= 100000 0 <= ts <= 100000 0 <= id <= 100000
【輸出格式】
按從小到大的順序輸出熱帖id。每個id一行。
【輸入樣例】
7 10 2
0 1
0 10
10 10
10 1
9 1100 3
100 3
【輸出樣例】
1 3
思維?,差不多吧,就是每次按照id為第一關鍵字從小到大排,如果相同就按照ts排,然後看每乙個的t+k項是否滿足
**:#include#include#include#include#include#include#include#include#include#includeconst int maxn=1e5+5;
typedef long long ll;
using namespace std;
int vis[maxn];
struct node
p[maxn];
bool cmp(node x,node y)
p[maxn];
char map[maxn][maxn];
int vis[maxn][maxn];
int dir[4][2]=,,,};
ll s;
void bfs(int x,int y)
}q.pop();
for(int t=0;t<4;t++)}}
if(s2-s1==0)
}int main()
int main()
sort(a,a+n,cmp);
ll sum=1;
for(int t=0;tcout
}
物件導向程式設計2018上機題(1)
從鍵盤輸入r行c列二維整型陣列,找出每一行的次最大值並顯示出來。要求 1 r和c為符號常量 2 二維陣列是動態申請生成的 3 每一行的次最大值是利用單獨的函式呼叫獲得的 4 對陣列元素的訪問以及函式引數宣告等都是利用指標實現的。include includeusing namespace std v...
網易2018校園招聘程式設計題真題 程式設計題 相反數
時間限制 1秒 空間限制 32768k 為了得到乙個數的 相反數 我們將這個數的數字順序顛倒,然後再加上原先的數得到 相反數 例如,為了得到1325的 相反數 首先我們將該數的數字順序顛倒,我們得到5231,之後再加上原先的數,我們得到5231 1325 6556.如果顛倒之後的數字有字首零,字首零...
藍橋杯預賽題 1
美國數學家維納 n.wiener 智力早熟,11歲就上了大學。他曾在1935 1936年應邀來中國清華大學講學。一次,他參加某個重要會議,年輕的臉孔引人注目。於是有人詢問他的年齡,他回答說 我年齡的立方是個4位數。我年齡的4次方是個6位數。這10個數字正好包含了從0到9這10個數字,每個都 恰好出現...