177462025-09-17 07:54:10ercseferencÚtvonalakcpp17Időlimit túllépés 0/1001.1s39892 KiB
#include <bits/stdc++.h>
using namespace std;
int n,m;
struct var{vector<int>kim; bool volt=0;};
vector<var>a;
int dfs(int x, int y){
    vector<int>ans;
    vector<int>lepes,ut;
    lepes.push_back(0);
    ut.push_back(x); int l=0;
    a[x].volt=1;
    while(l>=0){
        //cout<<lepes[l]<<" "<<ut[l]<<endl;
        if(lepes[l]>=a[ut[l]].kim.size() || ut[l]==y){
            if(ut[l]==y)ans.insert(ans.end(), ut.begin(), ut.end());
            a[ut[l]].volt=0;
            ut.erase(ut.begin()+l);
            lepes.erase(lepes.begin()+l);
            l--;
            if(l>=0)lepes[l]++;}
        else if(!a[a[ut[l]].kim[lepes[l]]].volt){
            ut.push_back(a[ut[l]].kim[lepes[l]]);
            lepes.push_back(0); l++;
            a[ut[l]].volt=1;}
        else if(lepes[l]+1<a[ut[l]].kim.size())
            lepes[l]++;
        else {
            a[ut[l]].volt=0;
            ut.erase(ut.begin()+l);
            lepes.erase(lepes.begin()+l);
            if(l>=1)lepes[l-1]++;
            l--;
            }}
        sort(ans.begin(),ans.end());
        for(int i=0; i<ans.size(); i++){
            if(ans[i]==x || ans[i]==y || (ans[i]==ans[i-1]&& i>0)){
                ans.erase(ans.begin()+i);
                i--;}}
        return ans.size();}
int main()
{
    //ifstream f("szamok.txt");
    int k; cin>>n>>m>>k; a.resize(n+1);
    for(int i=0; i<m; i++){
        int x,y; cin>>x>>y;
        a[x].kim.push_back(y);
        a[y].kim.push_back(x);
        }
    for(int i=0; i<k; i++){
        int x,y; cin>>x>>y;
        cout<<dfs(x,y)<<endl;}
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva1ms316 KiB
2Időlimit túllépés1.087s8624 KiB
subtask20/15
3Időlimit túllépés1.08s2600 KiB
4Időlimit túllépés1.08s316 KiB
5Elfogadva4ms564 KiB
6Időlimit túllépés1.08s1076 KiB
7Időlimit túllépés1.1s4404 KiB
8Időlimit túllépés1.08s8624 KiB
subtask30/15
9Elfogadva4ms316 KiB
10Elfogadva14ms316 KiB
11Elfogadva70ms568 KiB
12Elfogadva412ms1076 KiB
13Időlimit túllépés1.1s4104 KiB
14Időlimit túllépés1.1s8132 KiB
15Időlimit túllépés1.087s9520 KiB
subtask40/15
16Időlimit túllépés1.085s39880 KiB
17Időlimit túllépés1.082s4972 KiB
18Időlimit túllépés1.082s1268 KiB
19Időlimit túllépés1.083s5196 KiB
20Időlimit túllépés1.083s8668 KiB
subtask50/15
21Időlimit túllépés1.078s39892 KiB
22Időlimit túllépés1.078s36460 KiB
23Elfogadva3ms316 KiB
24Időlimit túllépés1.077s4048 KiB
25Időlimit túllépés1.1s4364 KiB
26Időlimit túllépés1.082s8980 KiB
subtask60/40
27Elfogadva1ms316 KiB
28Időlimit túllépés1.088s6824 KiB
29Időlimit túllépés1.08s2600 KiB
30Időlimit túllépés1.08s316 KiB
31Elfogadva4ms564 KiB
32Időlimit túllépés1.08s1076 KiB
33Időlimit túllépés1.1s4404 KiB
34Időlimit túllépés1.08s8624 KiB
35Elfogadva4ms316 KiB
36Elfogadva14ms316 KiB
37Elfogadva70ms568 KiB
38Elfogadva412ms1076 KiB
39Időlimit túllépés1.1s4104 KiB
40Időlimit túllépés1.1s8132 KiB
41Időlimit túllépés1.087s9520 KiB
42Időlimit túllépés1.085s39880 KiB
43Időlimit túllépés1.082s4972 KiB
44Időlimit túllépés1.082s1268 KiB
45Időlimit túllépés1.083s5196 KiB
46Időlimit túllépés1.083s8668 KiB
47Időlimit túllépés1.078s39892 KiB
48Időlimit túllépés1.078s36460 KiB
49Elfogadva3ms316 KiB
50Időlimit túllépés1.077s4048 KiB
51Időlimit túllépés1.1s4364 KiB
52Időlimit túllépés1.082s8980 KiB
53Időlimit túllépés1.09s9496 KiB
54Időlimit túllépés1.088s564 KiB
55Elfogadva170ms564 KiB
56Időlimit túllépés1.077s1076 KiB
57Időlimit túllépés1.075s4788 KiB
58Időlimit túllépés1.077s5308 KiB
59Időlimit túllépés1.077s9556 KiB
60Időlimit túllépés1.085s8740 KiB
61Időlimit túllépés1.077s8880 KiB
62Időlimit túllépés1.078s8764 KiB