本文已参与「新人创作礼」活动,一起开启掘金创作之路。
I love cube
题意:
给你一个边长为n-1的正方体,问你每一条边至少平行于正方体面的三个点的坐标为整数的等边三角形的个数。
思路:
如果只考虑在正方体顶点的话,边长为1的正方体内有8个且一共只有8个满足条件的三角形,边长为2时也有8个......同时边长为2的正方体包含了8个边长为1的正方体,边长为3的正方体包含了27个边长为1的正方体和8个边长为2的正方体.......,所以可以得到规律:三角形的个数为+++......+。
#include<bits/stdc++.h>
using namespace std;
#define ll long long
const ll mod = 1e9+7;
int main()
{
int t;
cin>>t;
while(t--)
{
ll n;
cin>>n;
n--;
n %= mod;
ll k = ((n%mod)*(n%mod))%mod;
ll m = ((n+1)%mod*(n+1)%mod)%mod;
cout<<(2*k)%mod*(m%mod)%mod<<endl;
}
}
I love 114514
题意:
给你一个字符串,问你114514是否是该字符串的子串。
思路:
挨着找就行。
#include<bits/stdc++.h>
using namespace std;
#define ll long long
char now[10] = "114514";
char a[100010];
int main()
{
int t;
cin>>t;
while(t--)
{
scanf("%s",a);
int n = strlen(a);
int flag = 0;
for(int i = 0; i < n; i++)
{
if(a[i] == now[flag])
{
flag++;
}
if(flag > 5)
{
flag = 6;
break;
}
}
if(flag == 6)
{
cout<<"AAAAAA"<<endl;
}
else
cout<<"Abuchulaile"<<endl;
}
}