mirror of
https://gitcode.com/Zengtudor/alg2025.git
synced 2025-12-16 12:13:03 +00:00
feat: 添加P8905.cpp和P3102.cpp两个题目解答
添加了两个编程题目的解答代码文件,分别处理图论问题和字符串匹配问题
This commit is contained in:
parent
f6d958f00a
commit
66740ddb77
34
src/11/13/P3102.cpp
Normal file
34
src/11/13/P3102.cpp
Normal file
@ -0,0 +1,34 @@
|
||||
#include <algorithm>
|
||||
#include <cstdint>
|
||||
#include <iostream>
|
||||
#include <istream>
|
||||
#include <string>
|
||||
using ll = int64_t;
|
||||
|
||||
std::string s;
|
||||
ll ans;
|
||||
|
||||
int main(){
|
||||
std::cin.tie(nullptr);
|
||||
std::iostream::sync_with_stdio(false);
|
||||
|
||||
std::cin>>s;
|
||||
for(ll i=1;i<s.size();i++){
|
||||
ll l1=i,l2=s.size()-i;
|
||||
for(ll j=0;j<std::min(l1,l2);j++){
|
||||
if(s[j]!=s[i+j]){
|
||||
goto nxt1;
|
||||
}
|
||||
}
|
||||
ans++;
|
||||
nxt1:;
|
||||
for(ll j=0;j<std::min(l1,l2);j++){
|
||||
if(s[i-1-j]!=s[s.size()-1-j]){
|
||||
goto nxt2;
|
||||
}
|
||||
}
|
||||
ans++;
|
||||
nxt2:;
|
||||
}
|
||||
std::cout<<ans*2<<"\n";
|
||||
}
|
||||
28
src/11/13/P8905.cpp
Normal file
28
src/11/13/P8905.cpp
Normal file
@ -0,0 +1,28 @@
|
||||
#include <cstdint>
|
||||
#include <iostream>
|
||||
#include <istream>
|
||||
#include <vector>
|
||||
using ll = int64_t;
|
||||
|
||||
ll n,m;
|
||||
struct P{
|
||||
ll u,v;
|
||||
};
|
||||
std::vector<std::vector<P>> a;
|
||||
std::vector<ll> f;
|
||||
|
||||
int main(){
|
||||
std::iostream::sync_with_stdio(false);
|
||||
std::cin.tie(nullptr);
|
||||
|
||||
std::cin>>n>>m;
|
||||
a.resize(n+1);
|
||||
f.resize(n+1);
|
||||
for(ll i=1;i<=m;i++){
|
||||
ll u,v;
|
||||
std::cin>>u>>v;
|
||||
f[u]++,f[v]++;
|
||||
a[u].emplace_back(v);
|
||||
a[v].emplace_back(u);
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user