农夫约翰的奶酪块
抽取一个方块之后,记录对于其所在行,列,竖的数量加+1
如果有行,列,竖的数量达到了n,则说明可以插入一个1*n的块
所以对答案贡献加+1
而我们注意到同一行的,列,竖坐标相同。相同的列,竖以此类推
点击查看代码[code]#includeusing namespace std;typedef pair pii;int t;int n,q;mapmp1,mp2,mp3;void solve(){ cin>>n>>q; int ans=0; for(int i=1;i>x>>y>>z; mp1[{x,y}]++; mp2[{y,z}]++; mp3[{x,z}]++; if(mp1[{x,y}]==n) ++ans; if(mp2[{y,z}]==n) ++ans; if(mp3[{x,z}]==n) ++ans; cout>n>>f; cin>>s; set cnt; for(int i=0;i=f) cnt.insert(t); // cout1){ if(s==s[i-1]) mp[sa]++; } if(i>0){ if(s==s[i+1]) mp[sb]++; }if(s[i+1]==s[i+2] && i |