好久不寫題,dp
都這麼生疏了,想不到複雜度合適的dp
。。。度度熊想去商場買一頂帽子,商場裡有n頂帽子,有些帽子的**可能相同。度度熊想買一頂**第三便宜的帽子,問第三便宜的帽子**是多少?
直接將所有**存入se
t 中,然後輸出第三小的即可。
剛開始沒注意不能相等,直接排序輸出,結果沒ac
,仔細看樣例後就能理解題目是求所有不同的**中第三小的。
#include
#include
#include
#include
using
namespace
std;
int n, a;
set st;
int main()
if(st.size() < 3)
else
}return
0;}
三維空間中有n個點,每個點可能是三種顏色的其中之一,三種顏色分別是紅綠藍,分別用』r』, 『g』, 『b』表示。
現在要找出三個點,並組成乙個三角形,使得這個三角形的面積最大。
但是三角形必須滿足:三個點的顏色要麼全部相同,要麼全部不同。
直接列舉顏色全相同的三個點和顏色全部不同的三個點,取面積最大的即可,時間複雜度o(
n3) 。
忘了通過座標求面積的公式了,只得通過點積推出角度,然後求面積。
#include
#include
#include
#include
using
namespace
std;
const
double eps = 1e-6;
struct node
node(int xx, int yy, int zz): x(xx), y(yy), z(zz) {}
node operator - (const node& a) const
double
operator * (const node& a) const
double length()
}p[3][53];
int n, cnt[3], x, y, z;
char color[3];
double ans;
double getarea(const node& pa, const node& pb, const node& pc)
return
0.5 * mul * sin(acos((pab * pac) / mul));
}int main()
else
if(color[0] == 'g')
else
}ans = 0;
//相同顏色
for(int c = 0; c < 3; ++c) }}
}//不同顏色
for(int i = cnt[0] - 1; i >= 0; --i) }}
printf("%.5lf\n", ans);
}return
0;}
度度熊有乙個n個數的陣列,他想將陣列從大到小排好序,但是萌萌的度度熊只會下面這個操作:
任取陣列中的乙個數然後將它放置在陣列的最後乙個位置。
問最少操作多少次可以使得陣列從小到大有序? 這個d
p 沒有想到,看了參考題解還是不理解轉移方程的意思。。。
百度2017春招筆試真題程式設計題集合
程式設計題 買帽子 時間限制 1秒 空間限制 32768k 度度熊想去商場買一頂帽子,商場裡有n頂帽子,有些帽子的 可能相同。度度熊想買一頂 第三便宜的帽子,問第三便宜的帽子 是多少?輸入描述 首先輸入乙個正整數n n 50 接下來輸入n個數表示每頂帽子的 均是正整數,且小於等於1000 輸出描述 ...
百度2017春招筆試真題程式設計題集合 2
題目 乙個數軸上共有n個點,第乙個點的座標是度度熊現在位置,第n 1個點是度度熊的家。現在他需要依次的從0號座標走到n 1號座標。但是除了0號座標和n 1號座標,他可以在其餘的n 2個座標中選出乙個點,並直接將這個點忽略掉,問度度熊回家至少走多少距離?以下是原始碼 include include i...
百度2017春招筆試真題程式設計題集合 3
題目 三維空間中有n個點,每個點可能是三種顏色的其中之一,三種顏色分別是紅綠藍,分別用 r g b 表示。現在要找出三個點,並組成乙個三角形,使得這個三角形的面積最大。但是三角形必須滿足 三個點的顏色要麼全部相同,要麼全部不同。以下是通過測試的原始碼 求三角形面積部分模仿 deeebug 已知三維空...