1 十二生肖【算法赛】
#include <iostream>
using namespace std;
int main()
{
cout<<5;
return 0;
}
2. 欢迎参加福建省大学生程序设计竞赛【算法赛】
#define _CRT_SECURE_NO_WARNINGS 1
#include<bits/stdc++.h>
using namespace std;
set<pair<int, int>>p;
void solve()
{
int n; cin >> n;
while (n--)
{
int a, b; cin >> a >> b;
p.insert(make_pair(a, b));
}
cout << p.size();
}
int main()
{
solve();
return 0;
}
3. 匹配二元组的数量【算法赛】
#define _CRT_SECURE_NO_WARNINGS 1
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N = 1e5 + 5;
int a[N];
int n;
int s[N];
void init()
{
for (int i = 1; i <= n; i++)
s[i] = s[i - 1] + i - 1;
}
void solve()
{
cin >> n;
init();
for (int i = 1; i <= n; i++)
{
cin >> a[i];
a[i] = a[i] * i;
}
sort(a + 1, a + 1 + n);
int cnt = 0;
//int pre = 0;
int l=1, r=1;
int ans = 0;
for (int i = 1; i <= n; i++)
{
l = i; r = i + 1;
cnt = 0;
while (r<=n&&a[r] == a[l])
{
r++;
cnt++;
}
ans += s[cnt + 1];
i = r-1;
}
printf("%lld", ans);
}
signed main()
{
solve();
return 0;
}
4. 元素交换【算法赛】
#define _CRT_SECURE_NO_WARNINGS 1
#include<bits/stdc++.h>
using namespace std;
void solve()
{
int n; cin >> n;
int cnt = 0;
for (int i = 1; i <= n * 2; i++)
{
int a; cin >> a;
if (i % 2 == 0&&a==1)
cnt++;
}
cout << min(cnt, n - cnt);
}
int main()
{
solve();
return 0;
}
5. 下棋的贝贝【算法赛】
#define _CRT_SECURE_NO_WARNINGS 1
#include<bits/stdc++.h>
using namespace std;
#define int long long
void solve()
{
int n; cin >> n;
if (n == 1)
{
cout << 0;
return;
}
int k=1;
while (k*k < n)
{
k++;
}
int t = k * k - n;
int ans = (k - 2) * (k - 2) * 4 + (k - 2) * 12 + 8;
if (t < k)
ans -= t * 4;
else
ans -= ((t - 1) * 4 + 2);
cout << ans;
}
signed main()
{
solve();
return 0;
}
6. 方程【算法赛】
#define _CRT_SECURE_NO_WARNINGS 1
#include<bits/stdc++.h>
using namespace std;
#define int long long
const int M = 1e9 + 7;
int n, k[5];
int cal(int n)
{
if (n < 3)
return k[n];
else
{
if (n % 2)
return (cal(n / 2) * cal(n / 2 + 1)- k[1])%M ;
else
{
int tmp = cal(n / 2);
return (tmp * tmp-2)%M;
}
}
}
void solve()
{
cin >> n >> k[1];
k[2] = (k[1] * k[1] - 2)%M;
cout << cal(n) << endl;
}
signed main()
{
int t; cin >> t;
while (t--)
solve();
return 0;
}
有疑问可以评论,感谢点赞