Submission #50888320
Source Code Expand
#include<bits/stdc++.h>
using namespace std;
#pragma GCC optimize("Ofast")
//#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,avx2,tune=native")
static const auto fast = []()
{ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0); return 0;} ();
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
using namespace __gnu_pbds;
template <typename num_t>
using ordered_set = tree<num_t, null_type, less<num_t>, rb_tree_tag, tree_order_statistics_node_update>; // find_by_order(*) , order_of_key
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
#define mod 1000000007
#define mod2 998244353
#define INF 1e18
//counting number of set bits
#define bitsi(n) __builtin_popcount(n)
#define bitsl(n) __builtin_popcount(n)
#define bitsll(n) __builtin_popcountll(n)
#define endl "\n"
#define f first
#define s second
#define rep(i,begin,end) for(__typeof(end) i=(begin)-((begin)>(end));i!=(end)-((begin)>(end)); i+=1-2*((begin)>(end)))
#define pb push_back
#define read(a,n) for(ll i=0;i<n;i++){cin>>a[i];}
#define all(x) (x).begin(), (x).end()
#define rall(x) (x).rbegin(), (x).rend()
//string to int stoi(s) to long long int stoll(s)
typedef long long ll;
typedef long double lld;
typedef unsigned long long ull;
typedef pair<int,int> pii;
typedef pair<ull,ull> puu;
typedef pair<ll,ll> pll;
typedef vector<ll> vll;
typedef vector<pll> vpll;
#ifndef ONLINE_JUDGE
#include "dbg.cpp"
#else
#define debug(...)
#define debugArr(arr, n)
#endif
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
ll binexp(ll a,ll x,ll m){
ll ans=1;
a%=m;
while(x){
if(x&1){ ans=(ans*a)%m;}
a=(a*a)%m;
x>>=1;
}
return ans;
}
//return {x,y,gcd} ; a*x + b*y = gcd
void extendgcd(ll a, ll b, ll*v) {if (b == 0) {v[0] = 1; v[1] = 0; v[2] = a; return ;} extendgcd(b, a % b, v); ll x = v[1]; v[1] = v[0] - v[1] * (a / b); v[0] = x; return;} //pass an arry of size1 3
ll mod_inverse(ll b,ll m){return binexp(b,m-2,m);}
ll mod_add(ll a, ll b, ll m) {a = a % m; b = b % m; return (((a + b) % m) + m) % m;}
ll mod_mul(ll a, ll b, ll m) {a = a % m; b = b % m; return (((a * b) % m) + m) % m;}
ll mod_sub(ll a, ll b, ll m) {a = a % m; b = b % m; return (((a - b) % m) + m) % m;}
ll mod_div(ll a, ll b, ll m) {a = a % m; b = b % m; return (mod_mul(a, mod_inverse(b, m), m) + m) % m;} //only for prime m
void sieveOfEratosthenes(int n){
vector<bool> primes(n+1,1);
primes[0]=0; primes[1]=0;
for(int i=2;i*i<=n;i++){
if(primes[i]==1){
for(int j=i*i;j<=n;j+=i){
primes[j]=0;
}}}
}
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//,
ll f(int x1,int y1, int z1 , int x2, int y2 , int z2){
return (max(0 , min(x1,x2) + 7 - max(x1,x2)))*(max(0,min(y1,y2) + 7 - max(y1,y2)))*(max(0,min(z1,z2) + 7 - max(z1,z2)));
}
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
int main(){
ll v1 , v2 , v3 ; cin >> v1 >> v2 >> v3;
if(v1 + v2 * 2 + 3*v3 != 343*3){cout<<"No"<<endl; return 0;}
for(int x1 = -7; x1 <= 7; x1++){
for(int x2 = 0; x2 <= 14; x2++){
for(int y1 = -7; y1 <= 7; y1++){
for(int y2 = 0; y2 <= 14; y2++){
for(int z1 = -7; z1 <= 7; z1++){
for(int z2 = 0 ; z2 <= 14; z2++){
// if(0,0,0) (x1,y1,z1) (x2,y2,z2);
ll abc =(max(0 , min({x1,x2,0}) + 7 - max({x1,x2,0})))*(max(0,min({y1,y2,0}) + 7 - max({y1,y2,0})))*(max(0,min({z1,z2,0}) + 7 - max({z1,z2,0})));
ll ab = f(x1,y1,z1, x2, y2,z2);
ll bc = f(x2,y2,z2, 0,0,0);
ll ac = f(x1,y1,z1, 0,0,0);
ab = ab - abc; bc = bc - abc; ac = ac - abc;
if(ab+bc+ac!=v2 || abc!=v3)continue;
cout<<"Yes"<<endl;
cout << "0 0 0 "<<x1 << " " << y1 <<" " << z1 << " " << x2 << " " << y2 <<" "<<z2 << endl;
return 0;
}
}
}
}
}
}
cout << "No"<<endl;
}
Submission Info
| Submission Time |
|
| Task |
E - 7x7x7 |
| User |
kadamrohan0215 |
| Language |
C++ 20 (gcc 12.2) |
| Score |
475 |
| Code Size |
4818 Byte |
| Status |
AC |
| Exec Time |
34 ms |
| Memory |
3628 KiB |
Judge Result
| Set Name |
Sample |
All |
| Score / Max Score |
0 / 0 |
475 / 475 |
| Status |
|
|
| Set Name |
Test Cases |
| Sample |
00_sample_00.txt, 00_sample_01.txt |
| All |
00_sample_00.txt, 00_sample_01.txt, 01_random_00.txt, 01_random_01.txt, 01_random_02.txt, 02_random2_00.txt, 02_random2_01.txt, 02_random2_02.txt, 02_random2_03.txt, 02_random2_04.txt, 02_random2_05.txt, 02_random2_06.txt, 02_random2_07.txt, 02_random2_08.txt, 02_random2_09.txt, 03_killer_00.txt, 03_killer_01.txt, 04_killer2_00.txt, 04_killer2_01.txt, 05_handmade_00.txt, 05_handmade_01.txt, 05_handmade_02.txt, 05_handmade_03.txt, 05_handmade_04.txt, 05_handmade_05.txt, 05_handmade_06.txt |
| Case Name |
Status |
Exec Time |
Memory |
| 00_sample_00.txt |
AC |
6 ms |
3328 KiB |
| 00_sample_01.txt |
AC |
1 ms |
3536 KiB |
| 01_random_00.txt |
AC |
1 ms |
3496 KiB |
| 01_random_01.txt |
AC |
1 ms |
3624 KiB |
| 01_random_02.txt |
AC |
1 ms |
3404 KiB |
| 02_random2_00.txt |
AC |
19 ms |
3488 KiB |
| 02_random2_01.txt |
AC |
15 ms |
3624 KiB |
| 02_random2_02.txt |
AC |
6 ms |
3416 KiB |
| 02_random2_03.txt |
AC |
20 ms |
3440 KiB |
| 02_random2_04.txt |
AC |
14 ms |
3492 KiB |
| 02_random2_05.txt |
AC |
19 ms |
3480 KiB |
| 02_random2_06.txt |
AC |
10 ms |
3628 KiB |
| 02_random2_07.txt |
AC |
5 ms |
3624 KiB |
| 02_random2_08.txt |
AC |
10 ms |
3436 KiB |
| 02_random2_09.txt |
AC |
10 ms |
3620 KiB |
| 03_killer_00.txt |
AC |
1 ms |
3484 KiB |
| 03_killer_01.txt |
AC |
3 ms |
3476 KiB |
| 04_killer2_00.txt |
AC |
11 ms |
3336 KiB |
| 04_killer2_01.txt |
AC |
19 ms |
3400 KiB |
| 05_handmade_00.txt |
AC |
1 ms |
3540 KiB |
| 05_handmade_01.txt |
AC |
1 ms |
3624 KiB |
| 05_handmade_02.txt |
AC |
1 ms |
3480 KiB |
| 05_handmade_03.txt |
AC |
3 ms |
3492 KiB |
| 05_handmade_04.txt |
AC |
34 ms |
3408 KiB |
| 05_handmade_05.txt |
AC |
1 ms |
3492 KiB |
| 05_handmade_06.txt |
AC |
27 ms |
3396 KiB |