2021CCPC网络预选赛
今年的CCPC网络预选赛又出事了,好好的网络选拔赛硬是让HDUOJ整成了选拔网络赛,HDUOJ被3000多支队伍挤崩了,卡的一批。另外1011题可以说就是洛谷的原题,我没看,可能就是改个输入输出就能过,出原题就不应该了吧,这是北邮的错,但是洛谷上这道许久无人问津的题今天下午却突然多出来7页提交,这就是各位参赛队伍的不对了吧,诚信何在?
这次网选赛整个学校还是一如既往的团灭,帆哥他们队解了3道题校内第一,我们2小时解了2道题校内第二,总榜1426,算是保住了20级首发队的名额。总榜第一被我奶中了,也不叫奶中了,毕竟北大的逆十字不当人。
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int _;
scanf("%d",&_);
while(_--)
{
int n;
scanf("%d",&n);
int ans=0;
if((n+1)%2)
{
if(n%2)
ans+=n/2;
else
ans+=n/2;
}
else
{
if(n%2)
ans+=n/2+1;
else
ans+=n/2;
}
int m=ceil(n/3.0);
if(m%2)
{
if((n-m+1)%2)
ans+=(n-m+1)/2+1;
else
ans+=(n-m+1)/2;
}
else
{
if((n-m+1)%2)
ans+=(n-m+1)/2;
else
ans+=(n-m+1)/2;
}
printf("%d\n",ans);
}
return 0;
}
#include <iostream>
#include <string>
using namespace std;
string s[]={" ","1","0001","01","1001"};
int main()
{
int _;
cin >> _;
while(_--)
{
int n;
cin >> n;
string ans="";
if(n%4)
ans+=s[n%4];
for(int i=1;i<=n/4;i++)
ans+="1001";
cout << ans.length() << endl;
cout << ans << endl;
}
return 0;
}
#include <iostream>
#include <map>
using namespace std;
#define N 100005
char s[N];
map <pair <int,int> ,int> mp;
struct Pos
{
int x;
int y;
}pos[N];
int main()
{
int _;
scanf("%d",&_);
while(_--)
{
mp.clear();
mp[make_pair(0,0)]++;
int n;
scanf("%d",&n);
scanf("%s",s+1);
long long ans=0;
for(int i=1;i<=n;i++)
{
if(s[i]=='U')
pos[i].x=pos[i-1].x,pos[i].y=pos[i-1].y+1;
if(s[i]=='D')
pos[i].x=pos[i-1].x,pos[i].y=pos[i-1].y-1;
if(s[i]=='L')
pos[i].x=pos[i-1].x-1,pos[i].y=pos[i-1].y;
if(s[i]=='R')
pos[i].x=pos[i-1].x+1,pos[i].y=pos[i-1].y;
mp[make_pair(pos[i].x,pos[i].y)]++;
if(mp[make_pair(pos[i].x,pos[i].y)]>1)
ans+=mp[make_pair(pos[i].x,pos[i].y)]-1;
}
printf("%lld\n",ans);
}
return 0;
}