Submission #60759022
Source Code Expand
Copy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#include<bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
#define ll long long
#define fr(j, l,n) for(int j = l; j < int(n); j++)
#define fn(j,n,l) for(int j=n-1;j>=l;j--)
#define gets(s) string s; cin>>s;
#define all(v) v.begin(),v.end()
#define getv(v,n) vector<ll> v(n); fr(i,0,n) cin >> v[i];
#define seev(a) for(auto x:a){cout<<x<<" ";}cout<<endl;
#define vl vector<ll>
#define ve vector
#define vvl vector<vector<ll>>
#define vp vector<pair<ll,ll>>
#define vc vector<char>
#define vvc vector<vector<char>>
#define pb push_back
#define mp make_pair
#define mse multiset<ll>
#define se set<ll>
#define ma map<ll,ll>
#define getmat(v,n,m) vector<vl>v(n,vl(m));fr(i,0,n) {fr (j,0,m) cin>>v[i][j];}
#define seemat(mat) for(auto row:mat){seev(row);}
#define YES cout<<"YES\n";
#define NO cout<<"NO\n";
using namespace std;
using namespace __gnu_pbds;
// Define ordered multiset with long long
typedef tree<long long, long long, less<long>, rb_tree_tag, tree_order_statistics_node_update> ordered_multimap;
typedef tree<ll, null_type, less<ll>, rb_tree_tag, tree_order_statistics_node_update> ordered_set;
vl sieve;
void SieveOfEratosthenes(int n)
{
// Create a boolean array "prime[0..n]" and initialize
// all entries it as true. A value in prime[i] will
// finally be false if i is Not a prime, else true.
vl prime(n+1,true);
for (int p = 2; p * p <= n; p++) {
// If prime[p] is not changed, then it is a prime
if (prime[p] == true) {
// Update all multiples of p greater than or
// equal to the square of it numbers which are
// multiple of p and are less than p^2 are
// already been marked.
for (int i = p * p; i <= n; i += p)
prime[i] = false;
}
}
// Print all prime numbers
for (int p = 2; p <= n; p++)
if (prime[p])
sieve.push_back(p);
}
bool sortbysec(const pair<ll, ll>& a,
const pair<ll, ll>& b)
{
return (a.second < b.second);
}
// gives gcd and the other coefficients
ll gcd(ll a, ll b, ll& x, ll& y) {
if (b == 0) {
x = 1;
y = 0;
return a;
}
ll x1, y1;
ll d = gcd(b, a % b, x1, y1);
x = y1;
y = x1 - y1 * (a / b);
return d;
}
// a raised to power b
ll pwr(ll a, ll b, ll mod = 0){
ll result = 1;
if(mod == 0){
while(b){
if(b & 1) result *= a;
a *= a;
b = b >> 1;
}
}
else {
while(b){
if(b & 1){
result *= a;
result = result % mod;
}
a *= a;
a = a % mod;
b = b >> 1;
}
}
return result;
}
ll modularinverse(ll a,ll p)// p is prime
{
return pwr(a,p-2,p);
}
// to convert string to binary(63 bits)
string tobin(ll a)
{
string s;
for (int i = 0; i < 63; i++)
{
if(a%2==1)
{
s+='1';
}
else
{
s+='0';
}
a>>=1;
}
return s;
}
int log2_floor(unsigned long long i) {
return i ? 63 - __builtin_clzll(i) : -1;
// -1 as log undefined for 0
}
// QUESTION DHANG SE PADHNA
void solve(ll tc){
ll n=0,m=0,k=0,a=0,b=0,c=0,x=0,y=0,z=0, x1,y1;
cin>>n>>m>>k;
cin>>a>>b;
getmat(mat,n,m);
// seemat(mat);
c=mat[a-1][b-1];
set<pair<ll,pair<ll,ll>>>sets;
vvl vis(n,vl(m));
vis[a-1][b-1]=1;
a--;
b--;
x=a-1,y=b;
if(x>=0 && x<n && y>=0 && y<m)
{
// cout<<mat[x][y]<<' ';
sets.insert({mat[x][y],{x,y}});
}
x=a+1,y=b;
if(x>=0 && x<n && y>=0 && y<m)
{
// cout<<mat[x][y]<< ' ';
sets.insert({mat[x][y],{x,y}});
}
x=a,y=b+1;
if(x>=0 && x<n && y>=0 && y<m)
{
// cout<<mat[x][y]<<' ';
sets.insert({mat[x][y],{x,y}});
}
x=a,y=b-1;
if(x>=0 && x<n && y>=0 && y<m)
{
// cout<<mat[x][y]<<' ';
sets.insert({mat[x][y],{x,y}});
}
while (!sets.empty())
{
long double a1=sets.begin()->first;
ll x1=sets.begin()->second.first,y1=sets.begin()->second.second;
sets.erase(sets.begin());
// cout<<a1<<endl;
if(a1*((long double)(k))<((long double)c))
{
if(!vis[x1][y1])
{
c+=(ll)a1;
vis[x1][y1]=true;
x=x1+1,y=y1;
if(x>=0 && x<n && y>=0 && y<m && !vis[x][y])
{
sets.insert({mat[x][y],{x,y}});
}
x=x1-1,y=y1;
if(x>=0 && x<n && y>=0 && y<m && !vis[x][y])
{
sets.insert({mat[x][y],{x,y}});
}
x=x1,y=y1-1;
if(x>=0 && x<n && y>=0 && y<m && !vis[x][y])
{
sets.insert({mat[x][y],{x,y}});
}
x=x1,y=y1+1;
if(x>=0 && x<n && y>=0 && y<m && !vis[x][y])
{
sets.insert({mat[x][y],{x,y}});
}
}
}
else
{
break;
}
}
cout<<c<<endl;
}
int main(){
#ifndef ONLINE_JUDGE
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
#endif
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
int t=1;
// cin>>t;
ll tc=0;
while(t--){
tc++;
solve(tc);
}
return 0;
}
Submission Info
Submission Time |
|
Task |
E - Takahashi is Slime 2 |
User |
DarshJainMe |
Language |
C++ 20 (gcc 12.2) |
Score |
450 |
Code Size |
5737 Byte |
Status |
AC |
Exec Time |
116 ms |
Memory |
17384 KB |
Compile Error
Main.cpp: In function ‘void solve(long long int)’:
Main.cpp:129:40: warning: unused variable ‘z’ [-Wunused-variable]
129 | ll n=0,m=0,k=0,a=0,b=0,c=0,x=0,y=0,z=0, x1,y1;
| ^
Main.cpp:129:45: warning: unused variable ‘x1’ [-Wunused-variable]
129 | ll n=0,m=0,k=0,a=0,b=0,c=0,x=0,y=0,z=0, x1,y1;
| ^~
Main.cpp:129:48: warning: unused variable ‘y1’ [-Wunused-variable]
129 | ll n=0,m=0,k=0,a=0,b=0,c=0,x=0,y=0,z=0, x1,y1;
| ^~
Main.cpp:128:15: warning: unused parameter ‘tc’ [-Wunused-parameter]
128 | void solve(ll tc){
| ^
Judge Result
Set Name |
Sample |
All |
Score / Max Score |
0 / 0 |
450 / 450 |
Status |
|
|
Set Name |
Test Cases |
Sample |
00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt |
All |
00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_random_03.txt, 01_random_04.txt, 01_random_05.txt, 01_random_06.txt, 01_random_07.txt, 01_random_08.txt, 01_random_09.txt, 01_random_10.txt, 01_random_11.txt, 01_random_12.txt, 01_random_13.txt, 01_random_14.txt, 01_random_15.txt, 01_random_16.txt, 01_random_17.txt, 01_random_18.txt, 01_random_19.txt, 01_random_20.txt, 01_random_21.txt, 01_random_22.txt, 01_random_23.txt, 01_random_24.txt, 01_random_25.txt, 01_random_26.txt, 01_random_27.txt, 01_random_28.txt, 01_random_29.txt, 01_random_30.txt, 01_random_31.txt, 01_random_32.txt, 01_random_33.txt, 01_random_34.txt, 01_random_35.txt, 01_random_36.txt, 01_random_37.txt, 01_random_38.txt, 01_random_39.txt, 01_random_40.txt, 01_random_41.txt, 01_random_42.txt, 01_random_43.txt, 01_random_44.txt, 01_random_45.txt, 01_random_46.txt, 01_random_47.txt, 01_random_48.txt, 01_random_49.txt, 01_random_50.txt, 01_random_51.txt, 01_random_52.txt, 01_random_53.txt, 01_random_54.txt, 01_random_55.txt, 01_random_56.txt, 01_random_57.txt, 01_random_58.txt, 01_random_59.txt, 01_random_60.txt, 01_random_61.txt, 01_random_62.txt, 01_random_63.txt, 01_random_64.txt |
Case Name |
Status |
Exec Time |
Memory |
00_sample_00.txt |
AC |
1 ms |
3568 KB |
00_sample_01.txt |
AC |
1 ms |
3408 KB |
00_sample_02.txt |
AC |
1 ms |
3520 KB |
01_random_03.txt |
AC |
100 ms |
10684 KB |
01_random_04.txt |
AC |
4 ms |
3972 KB |
01_random_05.txt |
AC |
110 ms |
12504 KB |
01_random_06.txt |
AC |
22 ms |
5460 KB |
01_random_07.txt |
AC |
108 ms |
12260 KB |
01_random_08.txt |
AC |
4 ms |
3796 KB |
01_random_09.txt |
AC |
110 ms |
12424 KB |
01_random_10.txt |
AC |
16 ms |
4972 KB |
01_random_11.txt |
AC |
18 ms |
6916 KB |
01_random_12.txt |
AC |
1 ms |
3432 KB |
01_random_13.txt |
AC |
17 ms |
6980 KB |
01_random_14.txt |
AC |
9 ms |
4392 KB |
01_random_15.txt |
AC |
115 ms |
11532 KB |
01_random_16.txt |
AC |
2 ms |
3764 KB |
01_random_17.txt |
AC |
116 ms |
12296 KB |
01_random_18.txt |
AC |
5 ms |
3980 KB |
01_random_19.txt |
AC |
97 ms |
11124 KB |
01_random_20.txt |
AC |
6 ms |
4096 KB |
01_random_21.txt |
AC |
107 ms |
11756 KB |
01_random_22.txt |
AC |
3 ms |
3884 KB |
01_random_23.txt |
AC |
17 ms |
6964 KB |
01_random_24.txt |
AC |
4 ms |
3848 KB |
01_random_25.txt |
AC |
18 ms |
7068 KB |
01_random_26.txt |
AC |
1 ms |
3524 KB |
01_random_27.txt |
AC |
15 ms |
7052 KB |
01_random_28.txt |
AC |
5 ms |
4180 KB |
01_random_29.txt |
AC |
17 ms |
6964 KB |
01_random_30.txt |
AC |
7 ms |
4332 KB |
01_random_31.txt |
AC |
17 ms |
7008 KB |
01_random_32.txt |
AC |
5 ms |
4240 KB |
01_random_33.txt |
AC |
17 ms |
7140 KB |
01_random_34.txt |
AC |
10 ms |
5224 KB |
01_random_35.txt |
AC |
16 ms |
6984 KB |
01_random_36.txt |
AC |
2 ms |
3636 KB |
01_random_37.txt |
AC |
15 ms |
6972 KB |
01_random_38.txt |
AC |
5 ms |
4108 KB |
01_random_39.txt |
AC |
17 ms |
7004 KB |
01_random_40.txt |
AC |
3 ms |
3896 KB |
01_random_41.txt |
AC |
18 ms |
6916 KB |
01_random_42.txt |
AC |
6 ms |
4180 KB |
01_random_43.txt |
AC |
1 ms |
3504 KB |
01_random_44.txt |
AC |
1 ms |
3444 KB |
01_random_45.txt |
AC |
1 ms |
3560 KB |
01_random_46.txt |
AC |
1 ms |
3444 KB |
01_random_47.txt |
AC |
1 ms |
3448 KB |
01_random_48.txt |
AC |
1 ms |
3492 KB |
01_random_49.txt |
AC |
1 ms |
3376 KB |
01_random_50.txt |
AC |
1 ms |
3648 KB |
01_random_51.txt |
AC |
1 ms |
3448 KB |
01_random_52.txt |
AC |
1 ms |
3424 KB |
01_random_53.txt |
AC |
1 ms |
3508 KB |
01_random_54.txt |
AC |
1 ms |
3424 KB |
01_random_55.txt |
AC |
1 ms |
3568 KB |
01_random_56.txt |
AC |
1 ms |
3528 KB |
01_random_57.txt |
AC |
1 ms |
3504 KB |
01_random_58.txt |
AC |
85 ms |
17300 KB |
01_random_59.txt |
AC |
77 ms |
17384 KB |
01_random_60.txt |
AC |
86 ms |
17264 KB |
01_random_61.txt |
AC |
1 ms |
3424 KB |
01_random_62.txt |
AC |
1 ms |
3516 KB |
01_random_63.txt |
AC |
1 ms |
3428 KB |
01_random_64.txt |
AC |
1 ms |
3404 KB |