Submission #3228255
Source Code Expand
#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<map>
using namespace std;
typedef long long ll;
int n;
struct node{int col[4];
node nxt(){ return node{col[1],col[2],col[3],col[0]};}
friend bool operator <(node a,node b)
{
for (int i=0;i<4;i++)
if (a.col[i]!=b.col[i]) return a.col[i]<b.col[i];
return 0;
}
}a[410],a1,a2,a3,a4;
map<node,int>mp;
void insert(node x,int v)
{for (int i=0;i<4;i++,x=x.nxt()) mp[x]+=v;}
node xx,yy;
int id1;
ll ans,re;
int main()
{
scanf("%d",&n);
for (int i=1;i<=n;i++)
{
scanf("%d%d%d%d",&a[i].col[0],&a[i].col[1],&a[i].col[2],&a[i].col[3]);
insert(a[i],1);
}
for (int i=1;i<=n;i++)
{
insert(a[i],-1);
for (int j=i+1;j<=n;j++)
{
insert(a[j],-1);
for (int t=0;t<4;t++)
{
a1=node{a[j].col[1],a[i].col[0],a[i].col[3],a[j].col[2]};
a2=node{a[i].col[1],a[j].col[0],a[j].col[3],a[i].col[2]};
a3=node{a[j].col[1],a[j].col[0],a[i].col[1],a[i].col[0]};
a4=node{a[i].col[3],a[i].col[2],a[j].col[3],a[j].col[2]};
a[j]=a[j].nxt();
if (mp[a1]==0||mp[a2]==0||mp[a3]==0||mp[a4]==0) continue;
re=1;
re*=mp[a1];insert(a1,-1);
re*=mp[a2];insert(a2,-1);
re*=mp[a3];insert(a3,-1);
re*=mp[a4];
insert(a1,1);insert(a2,1);insert(a3,1);
ans+=re;
}
insert(a[j],1);
}
}
cout<<ans;
}
Submission Info
Compile Error
./Main.cpp: In function ‘int main()’:
./Main.cpp:28:19: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%d",&n);
^
./Main.cpp:31:78: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%d%d%d%d",&a[i].col[0],&a[i].col[1],&a[i].col[2],&a[i].col[3]);
^
Judge Result
Set Name |
Sample |
All |
Score / Max Score |
0 / 0 |
900 / 900 |
Status |
|
|
Set Name |
Test Cases |
Sample |
0_000.txt, 0_001.txt, 0_002.txt |
All |
0_000.txt, 0_001.txt, 0_002.txt, 1_003.txt, 1_004.txt, 1_005.txt, 1_006.txt, 1_007.txt, 1_008.txt, 1_009.txt, 1_010.txt, 1_011.txt, 1_012.txt, 1_013.txt, 1_014.txt, 1_015.txt, 1_016.txt, 1_017.txt, 1_018.txt, 1_019.txt |
Case Name |
Status |
Exec Time |
Memory |
0_000.txt |
AC |
1 ms |
256 KB |
0_001.txt |
AC |
1 ms |
256 KB |
0_002.txt |
AC |
1 ms |
256 KB |
1_003.txt |
AC |
126 ms |
256 KB |
1_004.txt |
AC |
10 ms |
256 KB |
1_005.txt |
AC |
249 ms |
256 KB |
1_006.txt |
AC |
169 ms |
256 KB |
1_007.txt |
AC |
375 ms |
256 KB |
1_008.txt |
AC |
350 ms |
256 KB |
1_009.txt |
AC |
341 ms |
256 KB |
1_010.txt |
AC |
22 ms |
256 KB |
1_011.txt |
AC |
124 ms |
896 KB |
1_012.txt |
AC |
2 ms |
384 KB |
1_013.txt |
AC |
273 ms |
19200 KB |
1_014.txt |
AC |
2 ms |
512 KB |
1_015.txt |
AC |
255 ms |
20352 KB |
1_016.txt |
AC |
55 ms |
5760 KB |
1_017.txt |
AC |
253 ms |
20352 KB |
1_018.txt |
AC |
253 ms |
20224 KB |
1_019.txt |
AC |
275 ms |
20224 KB |