首页 > 其他分享 >Codeforces 1322 B. Count Subrectangles(贪心)

Codeforces 1322 B. Count Subrectangles(贪心)

时间:2023-02-03 12:39:28浏览次数:52  
标签:1322 Count cnt int res rep Codeforces ++ 序列


Codeforces 1322 B. Count Subrectangles(贪心)_i++


Codeforces 1322 B. Count Subrectangles(贪心)_ci_02

题意:

给出序列 Codeforces 1322 B. Count Subrectangles(贪心)_ci_03 和序列 Codeforces 1322 B. Count Subrectangles(贪心)_ci_04
矩阵 Codeforces 1322 B. Count Subrectangles(贪心)_ci_05 是由 Codeforces 1322 B. Count Subrectangles(贪心)_ci_03Codeforces 1322 B. Count Subrectangles(贪心)_ci_04 决定的 Codeforces 1322 B. Count Subrectangles(贪心)_ci_08
问你可以从中截取多少个面积为 Codeforces 1322 B. Count Subrectangles(贪心)_ci_09

显然可知的一个性质那就是当 Codeforces 1322 B. Count Subrectangles(贪心)_ci_03 序列 Codeforces 1322 B. Count Subrectangles(贪心)_ci_11 连续长度为 Codeforces 1322 B. Count Subrectangles(贪心)_ci_12Codeforces 1322 B. Count Subrectangles(贪心)_ci_04 序列 Codeforces 1322 B. Count Subrectangles(贪心)_ci_11 连续长度为 Codeforces 1322 B. Count Subrectangles(贪心)_i++_15Codeforces 1322 B. Count Subrectangles(贪心)_ci_16 时这个部分序列形成的矩阵肯定符合,我们只有枚举 Codeforces 1322 B. Count Subrectangles(贪心)_ci_03 中连续长度为 Codeforces 1322 B. Count Subrectangles(贪心)_ci_09 的因子,Codeforces 1322 B. Count Subrectangles(贪心)_ci_04 中连续长度为 Codeforces 1322 B. Count Subrectangles(贪心)_ci_20

AC代码:

int n, m, k;
int res,cnt;
const int N = 4e4 + 5;
int a[N], b[N];
int c[100010];
int x, y;
int main()
{
sddd(n, m, k);
rep(i, 1, n)
sd(a[i]);
rep(i, 1, m)
sd(b[i]);
cnt = 0;
ll ans = 0;
for (int i = 1; i * i <= k; i++)
{
if (k % i == 0)
{
c[cnt++] = i;
if (i == k / i)
continue;
c[cnt++] = k / i;
}
}
rep(i, 0, cnt-1)
{
res = 0;
x = 0, y = 0;
rep(j, 1, n)
{
if (a[j] == 1)
res++;
else
res = 0;
if (res == c[i])
res--, x++;//res--是去掉头上的那一个
}
res = 0;
rep(j, 1, m)
{
if (b[j] == 1)
res++;
else
res = 0;
if (res == k / c[i])
res--, y++;
}
ans += x * y;
}
pld(ans);
return 0;
}


标签:1322,Count,cnt,int,res,rep,Codeforces,++,序列
From: https://blog.51cto.com/u_15952369/6035751

相关文章

  • Codeforces 1322 A. Unusual Competitions
    题意:给出一个含有的字符串,让你可以选择一个区间进行重新排序,问一共选择的区间长度是多少可以使得字符串最后变成我们只需要从头开始遍历然后找到这种字符,并且使得和......
  • Codeforces 1316 B. String Modification
    题意:反转一个字符串,反转规则为从字符串首字母开头,长度为,反转问一个$k$时会得到一个新串,求字典序最小的新串和,如果字典序相同,则输出最小的。比赛时被卡,疯狂,其实举......
  • Codeforces 1316 D. Nash Matrix(dfs)
    题意:给出一个的棋盘和每个棋盘位置最后能走到的位置,如果一直走不停下来就是,可以停下来就是走到的最后位置,让你输出每个位置的操作字符,上下左右和,停在此位置。我们先找......
  • Codeforces1260 E Tournament(贪心)
    Description:Youareorganizingaboxingtournament,wherenboxerswillparticipate(ispowerof),andyourfriendisoneofthem.Allboxershavedifferents......
  • Codeforces 1155D Beautiful Array
    给你n个数字的数组然后还有一个x,你可以选择一段区间乘上x,输出最大子段和。用一个二维dp来做就行了AC代码:#include<cstdio>#include<cstring>#include<iostream>#include<......
  • codeforces 1257E The Contest(lis)
    题意:3堆数,要求使得第一堆的数为前缀,第三堆数为后缀,第二堆数为剩下的数,要求最少调整多少个数的位置使得要求成立。其实就是就把a1,a2,a3排个序然后拼成一个数组,问题转为一个......
  • codeforces 1257C Dominated Subarray
    题意就是找到一个最小的子区间使得这个区间中只有一个数的个数为2.AC代码:#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#include<vector>#inclu......
  • Codeforces1151B-Dima and a Bad XOR(构造)
    这道题真的想复杂了,作为div2的B题肯定不算难。只要构造出任意一种异或和大于1就行,如果第一列的值异或和>1,就直接全输入1即可,如果等于0,我们只要在任意一行中找到一个不等于......
  • Codeforces Round #661 (Div. 3)
    A.RemoveSmallest题意:给定一个序列,每次操作可以任选两个差的绝对值小于等于排序后计算相邻数的差,只要有大于AC代码:constintN=2e5+50;intn,m;inta[N];intmain......
  • Codeforces Round #662 (Div. 2)
    A.RainbowDash,FluttershyandChessColoring题意:有手动写几个找找规律。AC代码:intn,m;intmain(){intT;sd(T);while(T--){sd(n);pd(n/2+1);......