Submission #76474420


Source Code Expand

#include <bits/stdc++.h>
using namespace std;
typedef string str;
typedef long long ll;
typedef long double ld;
typedef unsigned long long ull;
using VI = vector<int>;
using VL = vector<ll>;
using VC = vector<char>;
using VS = vector<str>;
using P = pair<ll,ll>;
#define VE vector
#define pb push_back
#define sp ' '
#define fi first
#define se second
inline void scan(){}
template<class Head,class... Tail>
inline void scan(Head&head,Tail&... tail){std::cin>>head;scan(tail...);}
#define LL(...) ll __VA_ARGS__;scan(__VA_ARGS__)
#define LD(...) ld __VA_ARGS__;scan(__VA_ARGS__)
#define INT(...) int __VA_ARGS__;scan(__VA_ARGS__)
#define STR(...) string __VA_ARGS__;scan(__VA_ARGS__)
#pragma GCC target("avx2")
#pragma GCC optimize("O3")
#pragma GCC optimize("unroll-loops")//早くなる呪文
//可変長引数のmin
template<class... T>
constexpr auto min(T... a){return min(initializer_list<common_type_t<T...>>{a...});}
//可変長引数のmax
template<class... T>
constexpr auto max(T... a){return max(initializer_list<common_type_t<T...>>{a...});}
template<typename T,typename U>inline bool chmax(T&a,U b){if(a<b){a=b;return 1;}return 0;}
template<typename T,typename U>inline bool chmin(T&a,U b){if(a>b){a=b;return 1;}return 0;}
#define rep(i,a,b) for(ll i=a;i<b;i++)
#define rrep(i,a,b) for(ll i=a;i>b;i--)
#define urep(i,a,b) for(ull i=a;i<b;i++)
#define crep(i,a,b,c) for(ll i=a;i<b;i+=c)
#define ALL(x) std::begin(x),std::end(x)
#define RALL(x) std::rbegin(x),std::rend(x)
#define bit(x,i) (((x)>>(i))&1)
#define INF ((1LL<<62)-(1LL<<31))
//約数列挙 引数に取った整数の約数のvectorを返す
vector<ll>enumdiv(ll n){vector<ll>s;for(ll i = 1;i*i<=n;i++){if(n%i==0){s.push_back(i);if(i*i!=n)s.push_back(n/i);}}return s;}
// llで受け取れる奴
template<typename T> inline int len(vector<T>&a){return a.size();}
inline int len(string&a){return a.size();}
vector<ll> dx={1,0,-1,0};vector<ll> dy={0,1,0,-1};
vector<ll> edx={0,1,1,1,0,-1,-1,-1};vector<ll> edy={1,1,0,-1,-1,-1,0,1};
#include <atcoder/all>
using namespace atcoder;
using mint = modint998244353;


int main(){
  LL(h,w,k);
  VE<VL> grid(h,VL(w));
  rep(i,0,h){
    rep(j,0,w){
      char c;
      cin>>c;
      grid[i][j]=(c-'0');
    }
  }
  VE<VL> rui(h+1,VL(w+1));
  rep(i,0,h){
    rep(j,0,w){
      rui[i+1][j+1]=rui[i+1][j]+rui[i][j+1]-rui[i][j]+grid[i][j];
    }
  }
  ll ans=0;
  rep(i,0,h){
    rep(j,0,w){
      rep(ii,i+1,h+1){
        rep(jj,j+1,w+1){
          if(k==rui[ii][jj]-rui[ii][j]-rui[i][jj]+rui[i][j]){
            ans++;
          }
        }
      }
    }
  }
  cout<<ans<<endl;
}

Submission Info

Submission Time
Task D - Count Subgrid Sum = K
User raspberry1729
Language C++23 (GCC 15.2.0)
Score 425
Code Size 2678 Byte
Status AC
Exec Time 3243 ms
Memory 7584 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 425 / 425
Status
AC × 3
AC × 31
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
All sample_01.txt, sample_02.txt, sample_03.txt, test_01.txt, test_02.txt, test_03.txt, test_04.txt, test_05.txt, test_06.txt, test_07.txt, test_08.txt, test_09.txt, test_10.txt, test_11.txt, test_12.txt, test_13.txt, test_14.txt, test_15.txt, test_16.txt, test_17.txt, test_18.txt, test_19.txt, test_20.txt, test_21.txt, test_22.txt, test_23.txt, test_24.txt, test_25.txt, test_26.txt, test_27.txt, test_28.txt
Case Name Status Exec Time Memory
sample_01.txt AC 1 ms 3432 KiB
sample_02.txt AC 1 ms 3620 KiB
sample_03.txt AC 1 ms 3496 KiB
test_01.txt AC 1 ms 3500 KiB
test_02.txt AC 1 ms 3432 KiB
test_03.txt AC 1 ms 3616 KiB
test_04.txt AC 1 ms 3496 KiB
test_05.txt AC 3124 ms 7400 KiB
test_06.txt AC 3201 ms 7540 KiB
test_07.txt AC 3120 ms 7464 KiB
test_08.txt AC 3201 ms 7424 KiB
test_09.txt AC 3185 ms 7584 KiB
test_10.txt AC 3181 ms 7468 KiB
test_11.txt AC 3167 ms 7540 KiB
test_12.txt AC 3158 ms 7464 KiB
test_13.txt AC 3210 ms 7464 KiB
test_14.txt AC 3194 ms 7584 KiB
test_15.txt AC 3184 ms 7416 KiB
test_16.txt AC 3202 ms 7540 KiB
test_17.txt AC 3243 ms 7556 KiB
test_18.txt AC 3157 ms 7548 KiB
test_19.txt AC 3171 ms 7468 KiB
test_20.txt AC 3154 ms 7568 KiB
test_21.txt AC 3182 ms 7464 KiB
test_22.txt AC 3161 ms 7416 KiB
test_23.txt AC 3186 ms 7564 KiB
test_24.txt AC 3162 ms 7400 KiB
test_25.txt AC 3161 ms 7536 KiB
test_26.txt AC 3140 ms 7416 KiB
test_27.txt AC 3195 ms 7400 KiB
test_28.txt AC 3165 ms 7468 KiB