t1 斐波那契
一道找規律題,被我做成了賊難的題。
觀察可知x=f[i-1]+j。(j為x的父親)且j<=f[i-1],然後就二分找父親沒了。
1 #include2view code#define ll long long
3using
namespace
std;
4const
int mod=233
;5 ll f[61];6
struct
hush
17bool
find(ll x)
1823
void
clear()
2428
}h;29
ll getlca(ll a,ll b)
3041
if(h.find(b))return
b;42
while(b!=1)43
49}50int
main()
5162
return0;
63 }
t2 水題不說了
t3 分組
一道好題。
k=1:
以前做過一道菜餚製作,然後就可以知道:區間越往後放,就越靠前。然後就維護最長的區間即可
k=2:
用擴充套件域並查集,直接維護,特判很噁心。
1 #include2view code#define maxn 333333
3using
namespace
std;
4int
nxt[maxn],a[maxn],pf[maxn],dr[maxn],f[maxn];
5bool
vst[maxn];
6 vectorans,cl;
7 inline int find(intx)8
11 inline void merge(int x,int
y)12
17void bcj_clear(int l,int
r)18
23int
main()
2432
int ed=n;
33for(int i=0;i<=1024;i++)pf[i]=i*i;
34if(k==1)35
41if(!ok)
48 vst[a[i]]=1;49
cl.push_back(a[i]);50}
51if(!ans.size())printf("
1\n"
);52 cout<1
<
53for(int i=ans.size()-1;i>=0;i--)
54 printf("
%d "
,ans[i]);
55return0;
56}57else
5871
if(!dr[now])dr[now]=a[i];
72else
if(dr[now]!=now)merge(dr[now],a[i]);
73else
74if(!dr[a[i]])dr[a[i]]=now;
75else
if(dr[a[i]]!=a[i])merge(dr[a[i]],now);
76else 77}
78else
if(vst[pf[j]-a[i]]&&a[i]==pf[j]-a[i])
7982
else dr[a[i]]=a[i];
83//
cout<84}85
}86if(!ok)
92 vst[a[i]]=1;93
cl.push_back(a[i]);94}
95if(!ans.size())
96 cout<1
<
97for(int i=ans.size()-1;i>=0;i--)
98 printf("
%d "
,ans[i]);
99return0;
100}
101 }
主要反思一下:
考試策略不好,時間分配不合理,難度評估sb 認為t1最難,t3最水?????????
端正心態,不要去剛題,但也不要輕易放棄(暴力還是要打的)
noip模擬測試12
t1 斐波那契 呃,其實這題手玩一下就秒出了,可是我還是zz的沒有ac 先說說我怎麼zz的,10 是13位 我還以為是12位,然後表就打小了gg 其實正解很easy,手玩一下就會發現,點x的父親就是x減去比x小的第乙個斐波那契數 然後就簡單了,因為斐波那契樹的層數是小於 log x 的 所以直接用乙...
模擬測試12
考試剛發下題時的我 這什麼題,連思路啟發都沒有,毒瘤出題人!不可做!考後乙個字乙個字看著題解改出來的我 我去這麼水!這不沙幣題嗎!考後看著題解改不出來的我 這什麼題,沒一點思維含量,辣雞調試題!考後看不懂題解的我 這題解怎麼寫的比題目還短,一點素質沒有!考後看題解懵比的我 這解法怎麼這麼流氓!這解法...
NOIP模擬測試22
自 閉 賽 從這次比賽之後題都好難啊qaq 開考一小時內沒動鍵盤。三道題都不會。gg problem a 數論 過於玄學 列舉質因子,往答案裡去加。用來加入的質因子不會很多,質因子大了對答案是不優的。開兩個vector來回倒騰就完了 這題改完感覺也沒啥,為啥考場上就是想不出來啊qxq 1 inclu...