Submission #2214995
Source Code Expand
#include <iostream> #include<cstdlib> #include<queue> #include<set> #include<vector> #include<stack> #include<map> #include<string> #include<algorithm> #include<cmath> #include<cstdio> using namespace std; #define rep(i,a) for(int i=0;i<a;i++) #define mp make_pair #define pb push_back #define P pair<int,int> #define ll __int64 #define __int64 long long #define mat vector<vector<ll> > const int M=101; int n,k; int num[110]; string s[110]; string ans[20]; vector<int> t[50];//i番目の文字の数のj桁目 int pt[50]; bool used[20]; bool ok; string res[50]; void dfs(int p,ll z,int sum){ //cout<<p<<" "<<z<<endl; if(ok)return; if(p>=k){ //cout<<p<<" "<<z<<endl; bool is=1; int pos=0; rep(i,k)used[i]=0; ll zz=z; while(zz){ pt[pos++]=zz%10; zz/=10; } reverse(pt,pt+pos); rep(i,n){ string tmp="";//全体 string tan="";//数字と対応する文字 int now=0; rep(j,t[i].size()){ tan=""; rep(l,pt[t[i][j]])tan.push_back(s[i][now++]); if(now>s[i].size()){is=0;continue;} if(used[t[i][j]]){if(tan!=res[t[i][j]])is=0;} else{ //cout<<t[i][j]<<" *"<<tan<<" "; res[t[i][j]]=tan; used[t[i][j]]=1; } //cout<<tan<<" "; } //cout<<endl; if(now!=s[i].size())is=0; } if(is)ok=1; if(is){ //cout<<z<<":"; rep(i,k)cout<<res[i]<<endl; } return; } for(ll i=1;i<=3;i++){ dfs(p+1,z*10+i,sum+i); } } int main(){ cin>>k>>n; rep(i,n){ cin>>num[i]>>s[i]; int z=num[i],pos=0; while(z){ t[i].push_back(z%10-1); z/=10; } reverse(t[i].begin(),t[i].end()); } dfs(0,0,0); return 0; }
Submission Info
Submission Time | |
---|---|
Task | D - 語呂合わせ |
User | pappagukun |
Language | C++14 (GCC 5.4.1) |
Score | 100 |
Code Size | 1662 Byte |
Status | AC |
Exec Time | 502 ms |
Memory | 256 KB |
Judge Result
Set Name | Sample | Subtask1 | Subtask2 | ||||||
---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 40 / 40 | 60 / 60 | ||||||
Status |
|
|
|
Set Name | Test Cases |
---|---|
Sample | sample-01.txt, sample-02.txt, sample-03.txt, sample-04.txt |
Subtask1 | sample-02.txt, sample-03.txt, sample-04.txt, subtask1-01.txt, subtask1-02.txt, subtask1-03.txt, subtask1-04.txt, subtask1-05.txt, subtask1-06.txt, subtask1-07.txt, subtask1-08.txt, subtask1-09.txt, subtask1-10.txt, subtask1-11.txt, subtask1-12.txt, subtask1-13.txt, subtask1-14.txt, subtask1-15.txt, subtask1-16.txt, subtask1-17.txt, subtask1-18.txt, subtask1-19.txt, subtask1-20.txt |
Subtask2 | sample-01.txt, sample-02.txt, sample-03.txt, sample-04.txt, subtask1-01.txt, subtask1-02.txt, subtask1-03.txt, subtask1-04.txt, subtask1-05.txt, subtask1-06.txt, subtask1-07.txt, subtask1-08.txt, subtask1-09.txt, subtask1-10.txt, subtask1-11.txt, subtask1-12.txt, subtask1-13.txt, subtask1-14.txt, subtask1-15.txt, subtask1-16.txt, subtask1-17.txt, subtask1-18.txt, subtask1-19.txt, subtask1-20.txt, subtask2-01.txt, subtask2-02.txt, subtask2-03.txt, subtask2-04.txt, subtask2-05.txt, subtask2-06.txt, subtask2-07.txt, subtask2-08.txt, subtask2-09.txt, subtask2-10.txt, subtask2-11.txt, subtask2-12.txt, subtask2-13.txt, subtask2-14.txt, subtask2-15.txt, subtask2-16.txt, subtask2-17.txt, subtask2-18.txt, subtask2-19.txt, subtask2-20.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample-01.txt | AC | 1 ms | 256 KB |
sample-02.txt | AC | 1 ms | 256 KB |
sample-03.txt | AC | 1 ms | 256 KB |
sample-04.txt | AC | 1 ms | 256 KB |
subtask1-01.txt | AC | 1 ms | 256 KB |
subtask1-02.txt | AC | 1 ms | 256 KB |
subtask1-03.txt | AC | 1 ms | 256 KB |
subtask1-04.txt | AC | 1 ms | 256 KB |
subtask1-05.txt | AC | 1 ms | 256 KB |
subtask1-06.txt | AC | 1 ms | 256 KB |
subtask1-07.txt | AC | 2 ms | 256 KB |
subtask1-08.txt | AC | 1 ms | 256 KB |
subtask1-09.txt | AC | 1 ms | 256 KB |
subtask1-10.txt | AC | 1 ms | 256 KB |
subtask1-11.txt | AC | 2 ms | 256 KB |
subtask1-12.txt | AC | 1 ms | 256 KB |
subtask1-13.txt | AC | 2 ms | 256 KB |
subtask1-14.txt | AC | 1 ms | 256 KB |
subtask1-15.txt | AC | 1 ms | 256 KB |
subtask1-16.txt | AC | 2 ms | 256 KB |
subtask1-17.txt | AC | 1 ms | 256 KB |
subtask1-18.txt | AC | 1 ms | 256 KB |
subtask1-19.txt | AC | 1 ms | 256 KB |
subtask1-20.txt | AC | 1 ms | 256 KB |
subtask2-01.txt | AC | 51 ms | 256 KB |
subtask2-02.txt | AC | 39 ms | 256 KB |
subtask2-03.txt | AC | 185 ms | 256 KB |
subtask2-04.txt | AC | 181 ms | 256 KB |
subtask2-05.txt | AC | 41 ms | 256 KB |
subtask2-06.txt | AC | 13 ms | 256 KB |
subtask2-07.txt | AC | 447 ms | 256 KB |
subtask2-08.txt | AC | 113 ms | 256 KB |
subtask2-09.txt | AC | 492 ms | 256 KB |
subtask2-10.txt | AC | 493 ms | 256 KB |
subtask2-11.txt | AC | 489 ms | 256 KB |
subtask2-12.txt | AC | 264 ms | 256 KB |
subtask2-13.txt | AC | 85 ms | 256 KB |
subtask2-14.txt | AC | 255 ms | 256 KB |
subtask2-15.txt | AC | 189 ms | 256 KB |
subtask2-16.txt | AC | 271 ms | 256 KB |
subtask2-17.txt | AC | 1 ms | 256 KB |
subtask2-18.txt | AC | 502 ms | 256 KB |
subtask2-19.txt | AC | 485 ms | 256 KB |
subtask2-20.txt | AC | 489 ms | 256 KB |