cf #392(2) c. unfair poll
題意:n行m列人,老師點k次名。點名次序,每一行都是從1到m,但行是按1,2....(n-1),n,(n-1),(n-2)...1,2,3....(n-1),n.....求點完k次名後被點的最多的次數和最少的次數,以及給定的(x,y)被點次數。
總結:有點麻煩,但還是很好找規律,只是fst了,有時間再寫一
遍。。。還是太菜了,連著三場cf都是fst
#includeusingview codenamespace
std;
#pragma comment(linker, "/stack:102400000,102400000")
#define f(i,a,b) for (int i=a;i#define ff(i,a,b) for (int i=a;i<=b;i++)
#define mes(a,b) memset(a,b,sizeof(a))
#define inf 0x3f3f3f3ftypedef
long
long
ll;const
int n = 1e5+10
;const ll inf = 1.5e18
;int
main()
}else
num= k/ ((n-1)*m );
k%= (n-1)*m;
if(num&1
)
for(int i=n-1; i>=1; i--) }}
else
ff(i,
2,n) }}
}ll maxn=-inf, minn=inf, mm;
ff(i,
1,n) ff(j,1
,m)
cout""
}return0;
}//2 2 6 1 1
//3 5 1 2 1
CF374 C 動態規劃
題目看上去感覺像是dijstra,但是不是最短路,而是在實踐允許的範圍內選擇最多的點去走完從1到n的路,這個想到的是動態規劃,以邊為核心,一條邊一條邊的掃過,如果這條邊對應的起點和終點連線上之後,對於從1到終點來說是有利的就加上那種,我還不是很理解,只是把標程看懂自己敲了一遍而已。include u...
CF369C 思維搜尋
附 原題鏈結 題意 給你n個人,以及要進行k輪遊戲,每個人都有一把槍,在每一輪中,每個活著的人都將搶指向在場上編號最小的那個人身上,編號最小的那個人將槍口指向編號次小的那個人身上。現在已知每個人打中的概率,問k輪內,會有幾種存活情況出現。分析 通過分析,可以得知每一種存活狀態僅對應一種被槍口指向的人...
解題報告 CF58C
cf 上 1800 的題。可以用桶來計數,設 b i 為第乙個數為 i 時合法的數的個數,顯然這個是可以 mathcal o 1 直接算的,然後就做完了。一些我犯的 sb 錯誤 1.正整數序列沒看到正。2.注意 b 的非一值不一定只到 n 要迴圈到到 1e5 然後做得我懵逼至極,總體上說這道題還是比...