20171116SDUTAutumn Single Contest
2017-11-17 09:29
369 查看
1.CodeForces 208A Dubstep
贡献五发罚时
开始就读出
了这个点,但是敲的时候还是忘了
2. CodeForces 883F Lost in Transliteration
一开始 思路跑偏,
改正后由于忘看范围数组太小
又WA两发
3.CodeForces 850A Five Dimensional Points
还是水题一发,就是主函数有个地方没注意
。。。sad,赛后就A 了
4.CodeForces 883E Field of Wonders
赛后补出。
这个题就是题意有些绕。
给一个长为n的原串, m个应该说是可能的串。
求出有多少个可能的字母, 即说该字母一定可以。
首先明显不符的串可以直接去掉
如 a**a
与 aaba (若串中第二个字符是a, 那么在之前就会显示出来)
还比如 a**a
与 b**a 两串明显不符 还是可以略过
最近真的有点喜欢上用这些容器了。。。
5.CodeForces 883G Orientation of Edges
分为三类边 1. 有向的 直接加
2. 无向的再分为两类 正着加 反着加 序号相同
连续两次个人赛垫底了
找回手感。
贡献五发罚时
开始就读出
了这个点,但是敲的时候还是忘了
2. CodeForces 883F Lost in Transliteration
一开始 思路跑偏,
改正后由于忘看范围数组太小
又WA两发
3.CodeForces 850A Five Dimensional Points
还是水题一发,就是主函数有个地方没注意
。。。sad,赛后就A 了
4.CodeForces 883E Field of Wonders
赛后补出。
这个题就是题意有些绕。
给一个长为n的原串, m个应该说是可能的串。
求出有多少个可能的字母, 即说该字母一定可以。
首先明显不符的串可以直接去掉
如 a**a
与 aaba (若串中第二个字符是a, 那么在之前就会显示出来)
还比如 a**a
与 b**a 两串明显不符 还是可以略过
最近真的有点喜欢上用这些容器了。。。
#include <iostream> #include <cstdio> #include <cstring> #include <algorithm> #include <cmath> #include <set> #define ms(x) memset(x, 0, sizeof(x)) #define inf 0x3f3f3f3f using namespace std; const int N = 1234; string s; string st ; set<char >q ; int book[30]; bool vis ; bool jud ; int main() { ios::sync_with_stdio(false); int n, m; ms(book); ms(vis); ms(jud); cin>>n; cin>>s; for(int i=0;i<n;i++) if(s[i]!='*') {book[s[i]-'a']++;jud[i] = 1;} cin>>m; for(int i=0;i<m;i++) { cin>>st[i]; int f = 1; for(int j=0;j<st[i].size();j++) { if(jud[j]) { if(st[i][j]!=s[j]) vis[i] = 1; } else if(book[st[i][j]-'a']==0) { f = 0; q[i].insert(st[i][j]); } else { vis[i] = 1; } } } int ans = 0; for(int i=0;i<26;i++) { char t = i+'a'; int f = 1, j; for(j=0;j<m;j++) { if(vis[j]) continue; if(q[j].find(t)==q[j].end()) { f=0; break; } } if(f) ans++; } cout<<ans<<endl; return 0; }
5.CodeForces 883G Orientation of Edges
分为三类边 1. 有向的 直接加
2. 无向的再分为两类 正着加 反着加 序号相同
#include <iostream> #include <cstdio> #include <cstring> #include <algorithm> #include <cmath> #include <set> #include <vector> #define ms(x) memset(x, 0, sizeof(x)) #define inf 0x3f3f3f3f using namespace std; const int N = 312345; int n, m, s; struct node { int v, f; int id; node(int v, int f): v(v),f(f){} node(int id, int v, int f):id(id), v(v), f(f){ } }; vector<node>G ; int ans1 , ans2 ; int cnt = 0; bool vis ; void DFSma(int x) { vis[x] = 1; for(int i=0;i<G[x].size();i++) { if(vis[G[x][i].v]) continue; if(G[x][i].f==1) { ans1[0]++; DFSma(G[x][i].v); } else if(G[x][i].f == 2) { ans1[0]++; ans1[G[x][i].id] = 1; DFSma(G[x][i].v); } else { ans1[0]++; ans1[G[x][i].id] = 0; DFSma(G[x][i].v); } } } void DFSmi(int x) { vis[x] = 1; for(int i=0;i<G[x].size();i++) { if(vis[G[x][i].v]) continue; if(G[x][i].f==1) { ans2[0]++; DFSmi(G[x][i].v); } else if(G[x][i].f == 2) ans2[G[x][i].id] = 0; else ans2[G[x][i].id] = 1; } } int main() { scanf("%d%d%d",&n, &m, &s); for(int i=0;i<m;i++) { int t, u, v; scanf("%d%d%d",&t, &u, &v); if(t == 1) { G[u].push_back(node(v, 1)); } else if(t==2) { G[u].push_back(node(++cnt, v, 2)); G[v].push_back(node( cnt, u, 3)); } } ms(vis); DFSma(s); printf("%d\n",ans1[0]+1); for(int i=1;i<=cnt;i++) printf("%c", (ans1[i])?'+':'-'); cout<<endl; ms(vis); DFSmi(s); printf("%d\n",ans2[0]+1); for(int i=1;i<=cnt;i++) printf("%c",(ans2[i])?'+':'-'); cout<<endl; return 0; }
连续两次个人赛垫底了
找回手感。
相关文章推荐
- SDUT 2017 Autumn Single Contest K
- SDUT 2017 Autumn Single Contest K
- SDUT1128 Autumn Single contest
- 2017 12 10 cf 个人赛--题解 SDUT 2017 Autumn Single Contest L
- SDUT 2017 Autumn Single Contest O 周六场个人赛
- SDUT 2017 Autumn Single Contest N 模板场
- SDKD 2016 Summer Single Contest #12 .D
- Single Round Math sdut3260高精度除以低精度
- SDKD 2016 Summer Single Contest #12 .F
- SDUT 2162-The Android University ACM Team Selection Contest(模拟)
- SDKD 2016 Summer Single Contest #12 .G
- SDUT 2018 Winter Individual Contest - 8
- SDKD 2016 Summer Single Contest #13 .A
- SDUT 2018 Winter Individual Contest - 1
- SDUT 2018 Winter Individual Contest - 3
- SDUT 2018 Winter Individual Contest - 5
- SDKD 2016 Summer Single Contest #13 .B
- SDUT 2018 Winter Individual Contest - 7
- sdut 3260 Single Round Math 模拟
- sdut2624 Contest Print Server (大水+大坑)山东省第四届ACM省赛