[关闭]
@baobaobear 2020-04-14T12:56:25.000000Z 字数 11976 阅读 174

练习10

practise


A Carered

  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. typedef long long ll;
  4. const int maxn=1e7+10;
  5. const int inf=0x3f3f3f3f;
  6. ll n,k;
  7. int main(){
  8. cin >> n >> k;
  9. if(2LL * k >= n){
  10. cout << 10 << endl;
  11. }
  12. else{
  13. if(n % k != 0)
  14. cout << (n/k+1) *5LL <<endl;
  15. else cout << n/k *5LL << endl;
  16. }
  17. return 0;
  18. }

B 1292224662

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. #define rep(i,a,n) for(int i=a;i<=n;i++)
  4. #define per(i,a,n) for(int i=n;i>=a;i--)
  5. #define fi first
  6. #define se second
  7. #define pb push_back
  8. #define SZ(x) ((int)(x).size())
  9. typedef long long ll;
  10. typedef pair<int,int> pii;
  11. typedef double db;
  12. int prime[50010],p;
  13. int main(){
  14. rep(i,3,50005){
  15. int flag=1;
  16. for(int j=2;j*j<=i;j++){
  17. if(i%j==0){
  18. flag=0;break;
  19. }
  20. }
  21. if(flag&&i%5==1){
  22. prime[++p]=i;
  23. }
  24. }
  25. int n;cin>>n;
  26. rep(i,1,n){
  27. printf("%d%c",prime[i],(i==n)?'\n':' ');
  28. }
  29. return 0;
  30. }

C 1292224662

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. #define rep(i,a,n) for(int i=a;i<=n;i++)
  4. #define per(i,a,n) for(int i=n;i>=a;i--)
  5. #define fi first
  6. #define se second
  7. #define pb push_back
  8. #define SZ(x) ((int)(x).size())
  9. typedef long long ll;
  10. typedef pair<int,int> pii;
  11. typedef double db;
  12. int n,k,s,t,big=1e9;
  13. int main(){
  14. cin>>n>>k>>s;
  15. if(s==big){
  16. t=s-1;
  17. }
  18. else{
  19. t=big;
  20. }
  21. rep(i,1,n){
  22. if(i<=k){
  23. printf("%d ",s);
  24. }
  25. else{
  26. printf("%d ",t);
  27. }
  28. }puts("");
  29. return 0;
  30. }

D 1292224662

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. #define rep(i,a,n) for(int i=a;i<=n;i++)
  4. #define per(i,a,n) for(int i=n;i>=a;i--)
  5. #define fi first
  6. #define se second
  7. #define pb push_back
  8. #define SZ(x) ((int)(x).size())
  9. typedef long long ll;
  10. typedef pair<int,int> pii;
  11. typedef double db;
  12. int n,ans=1e9;
  13. char s[100010];
  14. int main(){
  15. cin>>n;
  16. scanf("%s",s+1);
  17. int r=0,b=0;
  18. rep(i,1,n){
  19. if(i%2==1&&s[i]=='r'){
  20. r++;
  21. }
  22. else if(i%2==0&&s[i]=='b'){
  23. b++;
  24. }
  25. }
  26. ans=min(ans,min(r,b)+abs(r-b));
  27. r=0,b=0;
  28. rep(i,1,n){
  29. if(i%2==1&&s[i]=='b'){
  30. r++;
  31. }
  32. else if(i%2==0&&s[i]=='r'){
  33. b++;
  34. }
  35. }
  36. ans=min(ans,min(r,b)+abs(r-b));
  37. cout<<ans<<endl;
  38. return 0;
  39. }

E Carered

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. typedef long long ll;
  4. const int maxn = 2000 + 50;
  5. typedef pair<int, int> pii;
  6. pii p[maxn], q[maxn];
  7. int n, Q;
  8. int ans[maxn];
  9. pii get_v(int x1, int y1, int x2, int y2){
  10. int x = x1 - x2, y = y1 - y2;
  11. int d = __gcd(x, y);
  12. x /= d, y /= d;
  13. if(x < 0) return make_pair(-x, -y);
  14. else{
  15. if(x == 0 && y < 0) return make_pair(x, -y);
  16. }
  17. return make_pair(x, y);
  18. }
  19. int main()
  20. {
  21. std::ios::sync_with_stdio(false);
  22. while(cin >> n >> Q){
  23. for(int i = 0;i < n;i++){
  24. cin >> p[i].first >> p[i].second;
  25. }
  26. for(int i = 0;i < Q;i++){
  27. cin >> q[i].first >> q[i].second;
  28. ans[i] = 0;
  29. }
  30. map<pii, int> mp;
  31. for(int i = 0;i < Q;i++){
  32. mp.clear();
  33. for(int j = 0;j < n;j++){
  34. pii v = get_v(p[j].first, p[j].second, q[i].first, q[i].second);
  35. mp[v]++;
  36. v = get_v(p[j].second, q[i].first, q[i].second, p[j].first);
  37. if(mp.count(v)) ans[i] += mp[v];
  38. }
  39. }
  40. for(int i = 0;i < n;i++){
  41. mp.clear();
  42. for(int j = 0;j < n;j++){
  43. if(i == j) continue;
  44. pii v = get_v(p[j].first, p[j].second, p[i].first, p[i].second);
  45. mp[v]++;
  46. }
  47. for(int j = 0;j < Q;j++){
  48. pii v = get_v(p[i].second, q[j].first, q[j].second, p[i].first);
  49. if(mp.count(v)) ans[j] += mp[v];
  50. }
  51. }
  52. for(int i = 0;i < Q;i++) cout << ans[i] << endl;
  53. }
  54. return 0;
  55. }

F 1292224662

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. #define xx first
  4. #define yy second
  5. typedef pair<int,int> pii;
  6. int n,f,t;
  7. vector<int> g[200010];
  8. int fa[200010];
  9. pii dfs(int now,int f,int len=0){
  10. fa[now]=f;
  11. pii res={now,len};
  12. for(auto t:g[now]){
  13. if(t==f) continue;
  14. pii tmp=dfs(t,now,len+1);
  15. if(tmp.yy>res.yy){
  16. res=tmp;
  17. }
  18. }
  19. return res;
  20. }
  21. bool vis[200010];
  22. int dis[200010];
  23. queue<int> q;
  24. pii bfs(){
  25. while(!q.empty()){
  26. int now=q.front();
  27. q.pop();
  28. for(auto t:g[now]){
  29. if(!vis[t]){
  30. dis[t]=min(dis[t],dis[now]+1);
  31. q.push(t);
  32. vis[t]=1;
  33. }
  34. }
  35. }
  36. pii res={-1,-1};
  37. for(int i=1;i<=n;i++){
  38. if(dis[i]>res.yy){
  39. res.xx=i;
  40. res.yy=dis[i];
  41. }
  42. }
  43. return res;
  44. }
  45. int main(){
  46. cin>>n;
  47. for(int i=1;i<=n-1;i++){
  48. scanf("%d%d",&f,&t);
  49. g[f].push_back(t);
  50. g[t].push_back(f);
  51. }
  52. pii p1=dfs(1,-1);
  53. pii p2=dfs(p1.xx,-1);
  54. printf("%d\n",p2.second);
  55. return 0;
  56. }

G 2018031701054

  1. #include <iostream>
  2. #include <algorithm>
  3. #include <vector>
  4. #include <cstdio>
  5. #include <cstring>
  6. using namespace std;
  7. const int N = 7 + 1e5;
  8. const int mod = 3 + 1e5;
  9. struct {
  10. int next;
  11. int a[6];
  12. } E[N];
  13. int head[N], tot;
  14. int a[6];
  15. int n;
  16. int get(int* a) {
  17. int sum = 0, mul = 1;
  18. for (int i = 0; i < 6; ++i) {
  19. sum += a[i];
  20. mul = 1LL * mul * a[i] % mod;
  21. }
  22. return (sum + mul) % mod;
  23. }
  24. int equal(int* a, int* b) {
  25. for (int i = 0; i < 6; ++i) {
  26. for (int j = 0; j < 6; ++j) {
  27. int ok = 1;
  28. for (int k = 0; k < 6 && ok; ++k) {
  29. if (a[(i + k) % 6] != b[(j + k) % 6]) ok = 0;
  30. }
  31. if (ok) return 1;
  32. ok = 1;
  33. for (int k = 0; k < 6 && ok; ++k) {
  34. if (a[(i + k) % 6] != b[(j - k + 6) % 6]) ok = 0;
  35. }
  36. if (ok) return 1;
  37. }
  38. }
  39. return 0;
  40. }
  41. int main() {
  42. int n;
  43. scanf("%d", &n);
  44. while (n--) {
  45. for (int i = 0; i < 6; ++i)
  46. scanf("%d", a + i);
  47. int x = get(a);
  48. for (int i = head[x]; i; i = E[i].next) {
  49. if (equal(a, E[i].a)) {
  50. printf("Twin snowflakes found.\n");
  51. return 0;
  52. }
  53. }
  54. memcpy(E[++tot].a, a, sizeof a);
  55. E[tot].next = head[x];
  56. head[x] = tot;
  57. }
  58. printf("No two snowflakes are alike.\n");
  59. return 0;
  60. }

H likailin

  1. #include<iostream>
  2. #include<cstring>
  3. #include<bits/stdc++.h>
  4. #define ios std::ios::sync_with_stdio(false)
  5. #define sd(n) scanf("%d",&n)
  6. #define sdd(n,m) scanf("%d%d",&n,&m)
  7. #define sddd(n,m,k) scanf("%d%d%d",&n,&m,&k)
  8. #define pd(n) printf("%d\n", (n))
  9. #define pdd(n,m) printf("%d %d\n", n, m)
  10. #define pld(n) printf("%lld\n", n)
  11. #define pldd(n,m) printf("%lld %lld\n", n, m)
  12. #define sld(n) scanf("%lld",&n)
  13. #define sldd(n,m) scanf("%lld%lld",&n,&m)
  14. #define slddd(n,m,k) scanf("%lld%lld%lld",&n,&m,&k)
  15. #define sf(n) scanf("%lf",&n)
  16. #define sff(n,m) scanf("%lf%lf",&n,&m)
  17. #define sfff(n,m,k) scanf("%lf%lf%lf",&n,&m,&k)
  18. #define rep(i,a,n) for (int i=a;i<=n;i++)
  19. #define per(i,n,a) for (int i=n;i>=a;i--)
  20. #define mm(a,n) memset(a, n, sizeof(a))
  21. #define VI vector<int>
  22. #define pb push_back
  23. #define SZ(x) ((int)(x).size())
  24. #define all(x) (x).begin(),(x).end()
  25. #define fi first
  26. #define se second
  27. #define il inline
  28. #define int long long
  29. #define ll long long
  30. #define ull unsigned long long
  31. #define MOD 1000000007
  32. #define pi 3.14159265358979323
  33. #define debug(x) cout <<#x<<": "<<x<<endl;
  34. #define debug2(x, y) cout <<#x<<": "<<x<<" | "<<#y<<": "<<y<<endl;
  35. #define debug3(x, y, z) cout <<#x<<": "<<x<<" | "<<#y<<": "<<y<<" | "<<#z<<": "<<z<<endl;
  36. #define debug4(a, b, c, d) cout <<#a<<": "<<a<<" | "<<#b<<": "<<b<<" | "<<#c<<": "<<c<<" | "<<#d<<": "<<d<<endl;
  37. using namespace std;
  38. /*
  39. const ll INF (0x3f3f3f3f3f3f3f3fll);
  40. const int inf (0x3f3f3f3f);
  41. template<typename T>void read(T &res){bool flag=false;char ch;while(!isdigit(ch=getchar()))(ch=='-')&&(flag=true);
  42. for(res=ch-48;isdigit(ch=getchar());res=(res<<1)+(res<<3)+ch - 48);flag&&(res=-res);}
  43. template<typename T>void Out(T x){if(x<0)putchar('-'),x=-x;if(x>9)Out(x/10);putchar(x%10+'0');}
  44. ll gcd(ll a,ll b){return b?gcd(b,a%b):a;}
  45. ll lcm(ll a,ll b){return a*b/gcd(a,b);}
  46. ll pow_mod(ll x,ll n,ll mod){ll res=1;while(n){if(n&1)res=res*x%mod;x=x*x%mod;n>>=1;}return res;}
  47. ll fact_pow(ll n,ll p){ll res=0;while(n){n/=p;res+=n;}return res;}
  48. ll mult(ll a,ll b,ll p){a%=p;b%=p;ll r=0,v=a;while(b){if(b&1){r+=v;if(r>p)r-=p;}v<<=1;if(v>p)v-=p;b>>=1;}return r;}
  49. ll quick_pow(ll a,ll b,ll p){ll r=1,v=a%p;while(b){if(b&1)r=mult(r,v,p);v=mult(v,v,p);b>>=1;}return r;}
  50. bool CH(ll a,ll n,ll x,ll t)
  51. {ll r=quick_pow(a,x,n);ll z=r;for(ll i=1;i<=t;i++){r=mult(r,r,n);if(r==1&&z!=1&&z!=n-1)return true;z=r;}return r!=1;}
  52. bool Miller_Rabin(ll n)
  53. {if(n<2)return false;if(n==2)return true;if(!(n&1))return false;ll x=n-1,t=0;while(!(x&1)){x>>=1;t++;}srand(time(NULL));
  54. ll o=8;for(ll i=0;i<o;i++){ll a=rand()%(n-1)+1;if(CH(a,n,x,t))return false;}return true;}
  55. void exgcd(ll a,ll b ,ll &x,ll &y){if(!b){x=1,y=0;return;}exgcd(b,a%b,x,y);ll t=x;x=y,y=t-(a/b)*y;}
  56. ll inv(ll a,ll b){ll x,y;return exgcd(a,b,x,y),(x%b+b)%b;}
  57. ll crt(ll x,ll p,ll mod){return inv(p/mod,mod)*(p/mod)*x;}
  58. ll fac(ll x,ll a,ll b)
  59. {if(!x)return 1;ll ans=1;for(ll i=1;i<=b;i++)if(i%a)ans*=i,ans%=b;
  60. ans=pow_mod(ans,x/b,b);for(ll i=1;i<=x%b;i++)if(i%a)ans*=i,ans%=b;return ans*fac(x/a,a,b)%b;}
  61. ll C(ll n,ll m,ll a,ll b)
  62. {ll N=fac(n,a,b),M=fac(m,a,b),Z=fac(n-m,a,b),sum=0,i;for(i=n;i;i=i/a)sum+=i/a;
  63. for(i=m;i;i=i/a)sum-=i/a;for(i=n-m;i;i=i/a)sum-=i/a;return N*pow_mod(a,sum,b)%b*inv(M,b)%b*inv(Z,b)%b;}
  64. ll exlucas(ll n,ll m,ll p)
  65. {ll t=p,ans=0,i;for(i=2;i*i<=p;i++){ll k=1;while(t%i==0){k*=i,t/=i;}
  66. ans+=crt(C(n,m,i,k),p,k),ans%=p;}if(t>1)ans+=crt(C(n,m,t,t),p,t),ans%=p;return ans % p;}
  67. int prime[100000],minprime[100000];
  68. void euler(int n)
  69. {int c=0,i,j;for(i=2;i<=n;i++){if(!minprime[i])prime[++c]=i,minprime[i]=i;for(j=1;j<=c&&i*prime[j]<=n;j++)
  70. {minprime[i*prime[j]]=prime[j];if(i%prime[j]==0)break;}}}
  71. struct Tree{ll l,r,sum,lazy,maxn,minn;}tree[100000];
  72. il void push_up(ll rt)
  73. {tree[rt].sum=tree[rt<<1].sum+tree[rt<<1|1].sum;
  74. tree[rt].maxn=max(tree[rt<<1].maxn,tree[rt<<1|1].maxn);
  75. tree[rt].minn=min(tree[rt<<1].minn,tree[rt<<1|1].minn);}
  76. il void push_down(ll rt , ll length)
  77. {if(tree[rt].lazy){tree[rt<<1].lazy+=tree[rt].lazy;tree[rt<<1|1].lazy+=tree[rt].lazy;
  78. tree[rt<<1].sum+=(length-(length>>1))*tree[rt].lazy;tree[rt<<1|1].sum+=(length>>1)*tree[rt].lazy;
  79. tree[rt<<1].minn+=tree[rt].lazy;tree[rt<<1|1].minn+=tree[rt].lazy;
  80. tree[rt<<1].maxn+=tree[rt].lazy;tree[rt<<1|1].maxn+=tree[rt].lazy;tree[rt].lazy=0;}}
  81. il void build(ll l , ll r , ll rt , ll *aa)
  82. {tree[rt].lazy=0;tree[rt].l=l;tree[rt].r=r;if(l==r)
  83. {tree[rt].sum=aa[l];tree[rt].minn=tree[rt].sum;tree[rt].maxn=tree[rt].sum;return;}
  84. ll mid=(l+r)>>1;build(l,mid,rt<<1,aa);build(mid+1,r,rt<<1|1,aa);push_up(rt);}
  85. il void update_range(ll L , ll R , ll key , ll rt)
  86. {if(tree[rt].r<L||tree[rt].l>R)return;if(L<=tree[rt].l&&R>=tree[rt].r){tree[rt].sum+=(tree[rt].r-tree[rt].l+1)*key;
  87. tree[rt].minn+=key;tree[rt].maxn+=key;tree[rt].lazy+=key;return;}push_down(rt,tree[rt].r-tree[rt].l+1);
  88. ll mid=(tree[rt].r+tree[rt].l)>>1;if(L<=mid)update_range(L,R,key,rt << 1);
  89. if(R>mid)update_range(L,R,key,rt << 1 | 1);push_up(rt);}
  90. il ll query_range(ll L, ll R, ll rt)
  91. {if(L<=tree[rt].l&&R>=tree[rt].r){return tree[rt].sum;}push_down(rt,tree[rt].r-tree[rt].l+1);
  92. ll mid=(tree[rt].r+tree[rt].l)>>1;ll ans=0;if(L<=mid)ans+=query_range(L,R,rt << 1);
  93. if(R>mid)ans+=query_range(L,R,rt << 1 | 1);return ans;}
  94. il ll query_min(ll L,ll R,ll rt)
  95. {if(L<=tree[rt].l&&R>=tree[rt].r){return tree[rt].minn;}push_down(rt,tree[rt].r-tree[rt].l+1);
  96. ll mid=(tree[rt].r+tree[rt].l)>>1;ll ans=(0x3f3f3f3f3f3f3f3fll);if(L<=mid)ans=min(ans,query_min(L,R,rt << 1));
  97. if(R>mid)ans=min(ans,query_min(L,R,rt << 1 | 1));return ans;}
  98. il ll query_max(ll L, ll R, ll rt)
  99. {if(L<=tree[rt].l&&R>=tree[rt].r){return tree[rt].maxn;}push_down(rt,tree[rt].r-tree[rt].l+1);
  100. ll mid=(tree[rt].r+tree[rt].l)>>1;ll ans=-(0x3f3f3f3f3f3f3f3fll);if(L<=mid)ans=max(ans,query_max(L,R,rt << 1));
  101. if(R>mid)ans=max(ans,query_max(L,R,rt << 1 | 1));return ans;}
  102. */
  103. const int N=50050,P=1e9+7;
  104. int n,a[N],b[N];
  105. struct Node{
  106. int len; ll cnt;
  107. void operator += (const Node &b){
  108. if(b.len < len) return;
  109. else if(b.len > len) cnt = b.cnt, len = b.len;
  110. else cnt = (cnt + b.cnt) % P;
  111. }
  112. }f[N],c[N],ans;
  113. Node Quary(int x){
  114. Node tmp = {0,1};
  115. for(;x;x-=x&-x) tmp += c[x];
  116. return tmp;
  117. }
  118. void Update(int x,Node val){
  119. for(;x<=n;x+=x&-x) c[x] += val;
  120. }
  121. signed main(){
  122. scanf("%d",&n);
  123. for(int i=1;i<=n;i++){
  124. scanf("%d",&a[i]); b[i] = a[i];
  125. } sort(b+1,b+n+1);
  126. int siz = unique(b+1,b+n+1) - (b+1);
  127. for(int i=1;i<=n;i++) a[i] = lower_bound(b+1,b+siz+1,a[i]) - b;
  128. for(int i=1;i<=n;i++){
  129. f[i] = Quary(a[i]-1);
  130. f[i].len ++;
  131. ans += f[i];
  132. Update(a[i],f[i]);
  133. } printf("%lld",ans.cnt); return 0;
  134. }

I Slove_code

  1. #include <cstdio>
  2. #include <algorithm>
  3. #include <vector>
  4. #include <iostream>
  5. #include <map>
  6. #include <queue>
  7. #include <cstring>
  8. #include <string>
  9. #include <cstdlib>
  10. #include <cmath>
  11. using namespace std;
  12. #define inf 1 << 28
  13. typedef long long ll;
  14. const ll maxn = 5e3 + 5;
  15. ll tr[maxn][maxn], n, m;
  16. ll lowbit(ll x)
  17. {
  18. return (x) & (-x);
  19. }
  20. void add(ll x, ll y, ll v)
  21. {
  22. while (x <= n)
  23. {
  24. ll ty = y;
  25. while (ty <= m)
  26. {
  27. tr[x][ty] += v;
  28. ty += lowbit(ty);
  29. }
  30. x += lowbit(x);
  31. }
  32. }
  33. void real_add(ll x1, ll y1, ll x2, ll y2, ll v)
  34. {
  35. add(x1, y1, v);
  36. add(x1, y2 + 1, -v);
  37. add(x2 + 1, y1, -v);
  38. add(x2 + 1, y2 + 1, v);
  39. }
  40. ll ask(ll x, ll y)
  41. {
  42. ll res = 0;
  43. while (x)
  44. {
  45. ll ty = y;
  46. while (ty)
  47. res += tr[x][ty], ty -= lowbit(ty);
  48. x -= lowbit(x);
  49. }
  50. return res;
  51. }
  52. int main()
  53. {
  54. ios::sync_with_stdio(false);
  55. cin.tie(0);
  56. while (cin >> n >> m)
  57. {
  58. memset(tr, 0, sizeof tr);
  59. ll a, b, c, d, e, k;
  60. while (cin >> a)
  61. {
  62. if (a & 1)
  63. {
  64. cin >> b >> c >> d >> e >> k;
  65. real_add(b, c, d, e, k);
  66. }
  67. else
  68. {
  69. cin >> b >> c;
  70. if (b > n || c > m)
  71. cout << 0 << endl;
  72. else
  73. cout << ask(b, c) << endl;
  74. }
  75. }
  76. }
  77. }

J puluo

  1. #include<stdio.h>
  2. bool used[1005];
  3. int heng[105],zong[105],he[105][105],cnt=0;
  4. long long sum;
  5. /*二分图*/
  6. int num,to[70005],next[70005],head[1005],match[1005];
  7. void makeline(int u,int v)
  8. {
  9. to[++cnt]=v;
  10. next[cnt]=head[u];
  11. head[u]=cnt;
  12. }
  13. bool mat(int u)
  14. {
  15. for(int edge=head[u];edge;edge=next[edge])
  16. if(used[to[edge]]==false)
  17. {
  18. int k,v=to[edge];
  19. k=match[v];used[v]=1;match[v]=u;
  20. if(!k||mat(k))return true;
  21. match[v]=k;
  22. }
  23. return false;
  24. }
  25. int main()
  26. {
  27. int m,n;
  28. scanf("%d%d",&m,&n);
  29. for(int i=1;i<=m;i++)for(int j=1;j<=n;j++)scanf("%d",&he[i][j]);
  30. for(int i=1;i<=m;i++)
  31. {
  32. for(int j=1;j<=n;j++)
  33. {
  34. if(heng[i]<he[i][j])heng[i]=he[i][j];
  35. if(zong[j]<he[i][j])zong[j]=he[i][j];
  36. /*贪心*/
  37. if(he[i][j]>0)sum+=he[i][j]-1;
  38. }
  39. }
  40. for(int i=1;i<=m;i++)
  41. {
  42. for(int j=1;j<=n;j++)
  43. if(heng[i]==zong[j]&&he[i][j]!=0)makeline(i,m+j);
  44. }
  45. /*返还投影*/
  46. for(int i=1;i<=m;i++)if(heng[i])sum=sum-heng[i]+1;
  47. for(int j=1;j<=n;j++)if(zong[j])sum=sum-zong[j]+1;
  48. /*特殊情况*/
  49. for(int i=1;i<=m;i++)
  50. {
  51. for(int j=0;j<205;j++)used[j]=false;
  52. if(mat(i))sum+=heng[i]-1;
  53. }
  54. printf("%lld\n",sum);
  55. }
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注