這場一開始st卡在了io的上面t了兩發,我wa了兩發c,有一些情況沒有考慮到。50mins的時候我看st**,發現沒問題大膽換了io,ac,跟st講了2minsc的時候發現了wa點,改了ac。隨後cxy也ac了j題。大概過了快1小時,我們做不下去了,退場補題,發現de還是可以做的,對標區域賽銅尾,如果de開出來可能能進到銀尾。
總結:io必須開。
現場賽簽到還是和隊友討論後交。
e題沒有耐心想下去。
m j是隊友寫的,貌似也是簽到不寫了。
題解:c
題意:給你2個01串,你可以選擇兩個區間將區間內的所有數0變1,1變0。問有幾種方法把他變為一樣。卡o1
思路:如果有兩個聯通塊區間不一樣那麼方案數為6。
如果都一樣那麼方案數為(n+1)*n/2
如果只有1個,那麼方案數為不一樣的個數(cnt-1)2+一樣的個數cnt22
此外0**:
#include
using
namespace std;
#define ll long long
#define forn(i,n) for(int i=0;i#define for1(i,n) for(int i=1;i<=n;i++)
#define io ios::sync_with_stdio(false);cin.tie(0);cout.tie(0)
const
int inf =
0x3f3f3f3f
;const ll inf =
0x3f3f3f3f3f3f3f3f
;int
main()
int id =0;
forn
(i,n)
if(a[i])if
(id>2)
else
if(id==2)
else
if(id==1)
cout<<
2*cnt+
2*cnt2<<
'\n';}
else cout<<
1ll*n*(1
+n)/
2<<
'\n';}
return0;
}
e
題意:從1點出發每到乙個點這個點的權值增長ai,問走了m次後,讓所有點權值最小值最大。
思路:典型的二分題,只是被題意蒙蔽了雙眼,想了個其他的二分,不想寫了。
二分ans,主要judge比較坑難寫。
我們先算出每個點到達lim需要訪問至少幾次,然後那麼ai走了5次,ai+1要至少走5次。
所以每個點走的次數就是x(當前點至少訪問次數)+x-1(需要消耗來回拐彎)。加一些特判和修改就寫成了**的樣子。
**:
#include
using
namespace std;
#define ll long long
#define forn(i, n) for (int i = 0; i < n; i++)
#define for1(i, n) for (int i = 1; i <= n; i++)
#define io \
ios::sync_with_stdio(false); \
cin.tie(0); \
cout.tie(0)
const
int maxn =
1e5+5;
ll a[maxn]
, n, m;
bool
check
(ll lim)
else
y = x -1;
sum +
= x + y;
if(sum > m)
return0;
}return1;
}int
main()
cout << l -
1<<
'\n';}
return0;
}
d.
題意:給一串數字,他由下圖構成。這裡的+號代表放在後面。問構成這串數字最小字典序的ab是多少。
思路:想明白一點,如果x = ai*bi,那麼x肯定》ai||>bi。所以我們列舉a0的9種可能來爆搜判斷。
**:
#include
using
namespace std;
#define ll long long
#define forn(i,n) for(int i=0;i#define for1(i,n) for(int i=1;i<=n;i++)
#define io ios::sync_with_stdio(false);cin.tie(0);cout.tie(0)
const
int maxn =
2e5+5;
int n,m,pos,a[maxn]
,b[maxn]
,len;
char s[maxn]
;bool
getb()
return1;
}bool
geta()
}return1;
}bool
solve()
int two = one*
10+s[1]
-'0'
;for1
(i,9)if
(two%i==
0&&two/i<10)
return0;
}int
main()
else cout<<
"impossible"
<<
'\n';}
return0;
}
青島區域賽總結
青島區域賽總結 經歷了人生第一次acm正式比賽,雖然從結果看是以失敗告終,但是這也是已經預料到的一種可能性吧,若真的得獎了也只能說是碰上的吧。雖然辛辛苦苦的的準備了乙個多月,但是可惜水平還是有限,不能達到獲獎的水平吧。比完賽後開始有一點傷心,畢竟可以說是無功而返吧,但是不久就想通了。不管怎樣,只能怪...
2018acm區域賽青島
zoj4060 思維題目 找規律,比較難想!劃分不同塊,找不同塊。根據不同塊的數目又分為4種情況。劃分塊就夠難想了,這4種情況計算規律更是難找!1 include 2 include 3 include 4 using namespace std 5 typedef long long ll 6 l...
青島區域賽備戰 模板及複習 dp
for 列舉起點 for 列舉長度 處理區間 或 dfs寫法 dp方程隨緣看清維數,弄清楚轉移方向啊 typedef long long ll int a 20 ll dp 20 state ll dfs int pos,state變數 bool limit 數字上界變數 if limit dp p...