#include<stdio.h>
int a[1000000];
int b[1000000];
int job(register unsigned int i,register unsigned int j, int n)
{
register unsigned int x, y;
register unsigned int count=0;
for(x=n; x>i; x--)
{
for(y=1; y<j; y++)
{
if(a[x]==b[y]) count++;
}
}
for(x=1; x<i; x++)
{
for(y=n; y>j; y--)
{
if(a[x]==b[y]) count++;
}
}
return count;
}
int main()
{
register unsigned int n;
register unsigned int i, j, count=0;
register unsigned int x, y;
scanf("%d", &n);
for(i=1; i<=n; i++)scanf("%d", &a[i]);
for(j=1; j<=n; j++)scanf("%d", &b[j]);
for(i=1; i<=n; i++)
{
for(j=1; j<=n; j++)
{
if(a[i]==b[j])
{
if(i>j)
{
count=count+job(i, j, n);
}
if(i<j)
{
count=count+job(i, j, n);
}
if(i==j)
{
count=count+job(i, j, n);
}
}
}
}
printf("%d", count/2);
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
0 ms |
8896 KB |
Output is correct |
2 |
Correct |
0 ms |
8896 KB |
Output is correct |
3 |
Correct |
1 ms |
8896 KB |
Output is correct |
4 |
Correct |
17 ms |
8896 KB |
Output is correct |
5 |
Correct |
72 ms |
8896 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
758 ms |
8896 KB |
Output is correct |
2 |
Execution timed out |
1000 ms |
8892 KB |
Program timed out |
3 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Execution timed out |
1000 ms |
8892 KB |
Program timed out |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Execution timed out |
1000 ms |
8892 KB |
Program timed out |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Execution timed out |
1000 ms |
8892 KB |
Program timed out |
2 |
Halted |
0 ms |
0 KB |
- |