# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
770408 | Amylopectin | Flights (JOI22_flights) | C++17 | 8 ms | 1272 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include "Ali.h"
#include <string>
#include <vector>
#include <stdio.h>
using namespace std;
const int mxn = 2e4 + 10;
vector<int> pa[mxn] = {};
int dis[mxn] = {};
// char ans = {};
string ans;
int re(int cn,int be)
{
int i,j,fn;
for(i=0; i<pa[cn].size(); i++)
{
fn = pa[cn][i];
if(fn == be)
{
continue;
}
dis[fn] = dis[cn] + 1;
re(fn,cn);
}
return 0;
}
void Init(int n, std::vector<int> uu, std::vector<int> vv)
{
int i,j,cn,cm,fn,fm;
for(i=0; i<n; i++)
{
pa[i].clear();
}
for(i=0; i<n-1; i++)
{
pa[uu[i]].push_back(vv[i]);
pa[vv[i]].push_back(uu[i]);
}
for(i=0; i<n; i++)
{
SetID(i,i);
}
return ;
}
std::string SendA(std::string s)
{
int i,j,k,cn,cm,fn,fm;
ans.clear();
cn = 0;
cm = 0;
for(i=0; i<10; i++)
{
cn += (s[i] - '0') * (1<<i);
}
for(i=10; i<20; i++)
{
cm += (s[i] - '0') * (1<<(i-10));
}
for(i=0; i<10; i++)
{
dis[cn*10+i] = 0;
re(cn*10+i,-1);
for(j=0; j<10; j++)
{
for(k=0; k<14; k++)
{
if((1<<k) & dis[cm+j])
{
ans.push_back('1');
// ans[i*14+j] = '1';
}
else
{
ans.push_back('0');
// ans[i*14+j] = '0';
}
}
}
}
// cm *= 157;
// for(i=0; i<157; i++)
// {
// for(j=0; j<14; j++)
// {
// if((1<<j) & dis[cm+i])
// {
// ans.push_back('1');
// // ans[i*14+j] = '1';
// }
// else
// {
// ans.push_back('0');
// // ans[i*14+j] = '0';
// }
// }
// }
return ans;
}
#include "Benjamin.h"
#include <string>
#include <vector>
#include <stdio.h>
using namespace std;
// int const mxn = 2e4 + 10;
int n,yy,xx;
string s;
// char s[mxn] = {};
std::string SendB(int nn, int x, int y)
{
int i,j,cn,cm;
s.clear();
for(i=0; i<20; i++)
{
s.push_back(0);
}
n = nn;
yy = y;
xx = x;
cn = xx / 10;
for(i=0; i<10; i++)
{
if((1<<i) & cn)
{
s[i] = '1';
}
else
{
s[i] = '0';
}
}
cm = yy / 10;
for(i=0; i<10; i++)
{
if((1<<i) & cm)
{
s[i+10] = '1';
}
else
{
s[i+10] = '0';
}
}
return s;
}
int Answer(std::string t)
{
int i,j,cn,cm,su = 0;
cn = xx % 10;
cm = yy % 10;
for(i=0; i<14; i++)
{
su += (1<<i) * (t[cn*140 + cm*14+i] - '0');
}
return su;
}
컴파일 시 표준 에러 (stderr) 메시지
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |