Как бороться с превышением лимита времени в этом случае?
вопрос в том, чтобы найти ни одного из общих символов в n строках.
Первая строка входных данных содержит одно целое число T, обозначающее количество тестовых случаев. Описание тестов t следующим образом.
Первая строка каждого тестового набора содержит одно целое число N
Н
строк. Для каждого i (1≤i≤N) i-я из этих строк содержит одну строку Si.
Ограничения
1≤T≤1000
1≤N≤1000
1≤|Si|≤200
для каждого действительного i
S1,S2,...,SN
содержат только строчные английские буквы
Сумма длин строк по всем тестовым случаям ≤ 3500000
Что я уже пробовал:
#include <bits/stdc++.h> using namespace std; int main() { int t; cin>>t; while(t--) { int n; cin>>n; if(n==1) {cin.ignore(); string s; getline(cin,s); int k=s.length(); cout<<k<<"\n"; } else { int i,ctr=0; bool c[26]; memset(c,true,sizeof(c)); cin.ignore(); while(n--) { string s; getline(cin,s); bool a[26]={false}; for(i=0;i<s.length();i++) a[s[i]-'a']=true; for(i=0;i<26;i++) if(a[i]!=c[i]) c[i]=false; } for(i=0;i<26;i++) if(c[i]==true) ctr++; cout<<ctr<<"\n"; } } return 0; }
ZurdoDev
В чем заключается ваш вопрос?
Prateek Krishna
он показывает превышение лимита времени...
Как с этим бороться?
Rick York
Напишите код, который работает быстрее.
Prateek Krishna
можете ли вы дать несколько советов относительно этого кода для работы с TLE
Rick York
Вы можете начать с получения всех ваших входных данных из файла, а не cin. Вы просто должны использовать другой поток, отличный от cin, тот, который вы открыли сами. Вы всегда должны делать это, когда можете, потому что гораздо проще создавать тестовые случаи, которые можно использовать снова и снова. Вы можете иметь несколько файлов для различных тестов и легко переключаться между ними.
Richard MacCutchan
Эти упражнения в значительной степени являются пустой тратой времени. Возьмите хорошую книгу на C++ и изучите язык в деталях.
Rick York
Я полностью согласен! Очень жаль, что я не могу дать этому комментарию оценку. ;)
Richard MacCutchan
Спасибо, но не волнуйтесь; очки здесь не делают призов. :)